The following sections summarize changes made in all Java SE 8u112 BPRs. Bug fixes and any other changes are listed below in date order, most current BPR first. Note that bug fixes in previous BPR are also included in the current BPR.
To determine the version of your JDK software, use the following command:
java -version
Please note that fixes from the prior BPR (8u102 b35) are included in this version.
Bug Fixes
BugId | Component | Subcomponent | Summary |
---|---|---|---|
8166591 | client-libs | javax.swing | [macos 10.12] Trackpad scrolling of text on macOS 10.12 Sierra is very fast (Trackpad, Retina only) |
8166875 | core-libs | java.time | (tz) Support tzdata2016g |
8063089 (Confidential) |
hotspot | jfr | VM fails to start on Windows with enabled JFR |
October 18, 2016
The full version string for this update release is 1.8.0_112-b15 (b16 for OS X) (where "b" means "build"). The version number is 8u112.
JDK 8u112 contains IANA time zone data version 2016f. For more information, refer to Timezone Data Versions in the JRE Software.
See JDK-8159684
The security baselines for the Java Runtime Environment (JRE) at the time of the release of JDK 8u112 are specified in the following table:
JRE Family Version | JRE Security Baseline (Full Version String) |
---|---|
8 | 1.8.0_111-b14 |
7 | 1.7.0_121-b15 |
6 | 1.6.0_131-b14 |
The JRE expires whenever a new release with security vulnerability fixes becomes available. Critical patch updates, which contain security vulnerability fixes, are announced one year in advance on Critical Patch Updates, Security Alerts and Third Party Bulletin. This JRE (version 8u112) will expire with the release of the next critical patch update scheduled for January 17, 2017.
For systems unable to reach the Oracle Servers, a secondary mechanism expires this JRE (version 8u112) on February 17, 2017. After either condition is met (new release becoming available or expiration date reached), the JRE will provide additional warnings and reminders to users to update to the newer version. For more information, see JRE Expiration Date.
security-libs/java.security
SunPKCS11 Provider no longer offering SecureRandom by default
SecureRandom.PKCS11
from the SunPKCS11 Provider is disabled by default on Solaris because the native PKCS11 implementation has poor performance and is not recommended. If your application requires SecureRandom.PKCS11
, you can re-enable it by removing "SecureRandom" from the disabledMechanisms list in conf/security/sunpkcs11-solaris.cfg
Performance improvements have also been made in the java.security.SecureRandom
class. Improvements in the JDK implementation have allowed for synchronization to be removed from the java.security.SecureRandom.nextBytes(byte[] bytes)
method.
See JDK-8098581
deploy
JVM throws NullPointerExceptions on macOS Sierra 10.12
On macOS Sierra 10.12, if a user presses modifier keys (such as Command, Shift, or Alt) while an applet is running in a browser, an error box named “Internal Error” might be displayed. It will also show the “exec” icon in the macOS dock. The user can dismiss the applet, or try to rerun the applet while not pressing a modifier key. To fix this problem, users can install JRE 8u112.
See JDK-8165867.
This release also contains fixes for security vulnerabilities described in the Oracle Java SE Critical Patch Update Advisory.
# | BugId | Component | Subcomponent | Summary |
---|---|---|---|---|
1 | JDK-6477756 | client-libs | 2d | GraphicsDevice.getConfigurations() is slow taking 3 or more seconds |
2 | JDK-7172749 | client-libs | 2d | Xrender: Class cast exception in 2D code running an AWT regression test |
3 | JDK-8028486 | client-libs | 2d | java/awt/Window/WindowsLeak/WindowsLeak.java fails |
4 | JDK-8078382 | client-libs | 2d | Wrong glyph is displayed for a derived font |
5 | JDK-8133309 | client-libs | 2d | [win10] Some unicode characters do not display any more after upgrading to Windows 10 |
6 | JDK-8144703 | client-libs | 2d | ClassCastException: sun.font.CompositeFont cannot be cast to PhysicalFont |
7 | JDK-8158495 | client-libs | 2d | CCE: sun.java2d.NullSurfaceData cannot be cast to sun.java2d.opengl.OGLSurfaceData |
8 | JDK-8158178 | client-libs | java.awt | java.awt.SplashScreen.getSize() returns incorrect size for high dpi splash screens |
9 | JDK-8154816 | client-libs | java.awt:i18n | Caps Lock doesn't work as expected when using Pinyin Simplified input method |
10 | JDK-8145984 | client-libs | javax.accessibility | [macosx] sun.lwawt.macosx.CAccessible leaks |
11 | JDK-8153149 | client-libs | javax.accessibility | Uninitialised memory in WinAccessBridge.cpp:1128 |
12 | JDK-8154069 | client-libs | javax.accessibility | Jaws reads wrong values from comboboxes when no element is selected |
13 | JDK-8057791 | client-libs | javax.swing | Selection in JList is drawn with wrong colors in Nimbus L&F |
14 | JDK-8078268 | client-libs | javax.swing | javax.swing.text.html.parser.Parser parseScript incorrectly optimized |
15 | JDK-8136998 | client-libs | javax.swing | JComboBox prevents wheel mouse scrolling of JScrollPane |
16 | JDK-8157838 | client-libs | javax.swing | Personalized Windows Font Size is not taken into account in Java8u102 |
17 | JDK-8158734 | client-libs | javax.swing | JEditorPane.createEditorKitForContentType throws NPE after 6882559 |
18 | JDK-8147585 | core-libs | java.lang | Annotations with lambda expressions has parameter result in wrong behavior. |
19 | JDK-8155106 | core-libs | java.lang.invoke | MHs.Lookup.findConstructor returns handles for array classes |
20 | JDK-8153192 | core-libs | java.nio | (se) Selector.select(long) uses wrong timeout after EINTR (lnx) |
21 | JDK-8141148 | core-libs | javax.naming | LDAP "follow" throws ClassCastException with Java 8 |
22 | JDK-8158802 | core-libs | javax.naming | com.sun.jndi.ldap.SimpleClientId produces wrong hash code |
23 | JDK-8159822 | core-libs | javax.naming | Non‑synchronized access to shared members of com.sun.jndi.ldap.pool.Pool |
24 | JDK-8150219 | core-libs | javax.script | ReferenceError in 1.8.0_72 |
25 | JDK-8130127 | core-libs | jdk.nashorn | streamline input parameter of Nashorn scripting $EXEC function |
26 | JDK-8130317 | core-libs | jdk.nashorn | "ant test" fails to complete on Windows when run under cygwin shell |
27 | JDK-8137240 | core-libs | jdk.nashorn | Negative lookahead in RegEx breaks backreference |
28 | JDK-8141541 | core-libs | jdk.nashorn | Simplify Nashorn's Context class loader handling |
29 | JDK-8143642 | core-libs | jdk.nashorn | Nashorn shebang argument handling is broken |
30 | JDK-8144160 | core-libs | jdk.nashorn | Regression: two tests fail on Windows with "ant test" target |
31 | JDK-8144221 | core-libs | jdk.nashorn | fix Nashorn shebang argument handling on Mac/Linux |
32 | JDK-8148140 | core-libs | jdk.nashorn | arguments are handled differently in apply for JS functions and AbstractJSObjects |
33 | JDK-8156714 | core-libs | jdk.nashorn | Parsing issue with automatic semicolon insertion |
34 | JDK-8156896 | core-libs | jdk.nashorn | Script stack trace should display function names |
35 | JDK-8157160 | core-libs | jdk.nashorn | JSON.stringify does not work on ScriptObjectMirror objects |
36 | JDK-8157680 | core-libs | jdk.nashorn | Callback parameter of any JS builtin implementation should accept any Callable |
37 | JDK-8157819 | core-libs | jdk.nashorn | TypeError when a java.util.Comparator object is invoked as a function |
38 | JDK-8158467 | core-libs | jdk.nashorn | AccessControlException is thrown on public Java class access if "script app loader" is set to null |
39 | JDK-8154144 | core-svc | Tests in com/sun/jdi fails intermittently with "jdb input stream closed prematurely" | |
40 | JDK-8049226 | core-svc | debugger | com/sun/jdi/OptionTest.java test times out again |
41 | JDK-8029309 | deploy | [macosx] Java Control Panel unable to perform tasks requiring admin privileges | |
42 | JDK-8165867 | deploy | [macos] JVM continuously throw a NullPointerException on new MacOS 10.12 | |
43 | JDK-8155835 | deploy | javafx | FXUIToolkit.showFileChooser() fails when jre is below 7u21 |
44 | JDK-8155837 | deploy | javafx | FXUIToolkit.showSandboxSecurityDialog fails when running jre below 7u21 |
45 | JDK-8155849 | deploy | javafx | FXUIToolkit.showMessageDialog() fails when running jre below 7u55 |
46 | JDK-8081847 | deploy | webstart | Add a URL scheme handler to reliably launch .jnlp files - Mac registration part |
47 | JDK-8136844 | deploy | webstart | Change JavawsLauncher.app to use NSTask or execv |
48 | JDK-8144348 | deploy | webstart | Desktop shortcut is not updated after JNLP is changed in deployment cache |
49 | JDK-8157337 | deploy | webstart | Allow always checkbox in security dialog when jnlp location is unknown |
50 | JDK-8157785 | deploy | webstart | Signed JWS application unexpectedly asks for permission to open a socket |
51 | JDK-8063086 | hotspot | compiler | Math.pow yields different results upon repeated calls |
52 | JDK-8130309 | hotspot | compiler | Need to bailout cleanly if creation of stubs fails when codecache is out of space |
53 | JDK-8154831 | hotspot | compiler | CastII/ConvI2L for a range check is prematurely eliminated |
54 | JDK-8158260 | hotspot | compiler | PPC64: unaligned Unsafe.getInt can lead to the generation of illegal instructions |
55 | JDK-8159244 | hotspot | compiler | Partially initialized string object created by C2's string concat optimization may escape |
56 | JDK-8017629 | hotspot | gc | G1: UseSHM in combination with a G1HeapRegionSize > os::large_page_size() falls back to use small pages |
57 | JDK-8054326 | hotspot | gc | Confusing message in "Current rem set statistics" |
58 | JDK-8077276 | hotspot | gc | allocating heap with UseLargePages and HugeTLBFS may trash existing memory mappings (linux) |
59 | JDK-8158871 | hotspot | gc | Long response times with G1 and StringDeduplication |
60 | JDK-8154722 | hotspot | gc | Test gc/ergonomics/TestDynamicNumberOfGCThreads.java fails |
61 | JDK-8147451 | hotspot | jvmti | Crash in Method::checked_resolve_jmethod_id(_jmethodID*) |
62 | JDK-8161144 | hotspot | jvmti | Fix for JDK‑8147451 failed: Crash in Method::checked_resolve_jmethod_id(_jmethodID*) |
63 | JDK-8036630 | hotspot | runtime | Null ProtectionDomain in JVM can cause NPE because principals field is not initialized to an empty array |
64 | JDK-8042660 | hotspot | runtime | vm/mlvm/anonloader/stress/byteMutation failed with: assert(index >=0 && index < _length) failed: symbol index overflow |
65 | JDK-8135322 | hotspot | runtime | ConstantPool::release_C_heap_structures not run in some circumstances |
66 | JDK-8147026 | hotspot | runtime | Convert an assert in ClassLoaderData to a guarantee |
67 | JDK-8154210 | hotspot | runtime | Zero: Better byte behaviour |
68 | JDK-8158373 | hotspot | runtime | SIGSEGV: Metadata::mark_on_stack |
69 | JDK-8160201 | infrastructure | release_eng | 8u112 template file need to be updated |
70 | JDK-8148167 | install | install | jdk 8u71 fails to install with no error message |
71 | JDK-8156895 | install | install | ent msi does not have double‑click support |
72 | JDK-8161053 | javafx | application‑lifecycle | Passing objects between JavaScript (JavaFX / WebKit) and Java causes a memory leak |
73 | JDK-8134655 | javafx | base | SortedList wrapping a FilteredList causes AIOOBE |
74 | JDK-8144501 | javafx | controls | TreeTableView's selectedItems reports include null items. |
75 | JDK-8157398 | javafx | controls | [TreeTableView] graphic property of TreeItem is still visible after collapsing tree |
76 | JDK-8161449 | javafx | controls | Enhance CustomColorDialog to have flexibility to hide 'Opacity', 'Use' and 'Save' Button |
77 | JDK-8145516 | javafx | graphics | Scene content shows too large on Retina display, when a regular screen attached |
78 | JDK-8150076 | javafx | graphics | Print jobs do not finish when using a page range |
79 | JDK-8150181 | javafx | graphics | javafx print jobs take 60 times longer than javax.print |
80 | JDK-8152423 | javafx | graphics | Generated temp files (+JXF...temp) for custom fonts not deleted on exit. |
81 | JDK-8155692 | javafx | graphics | changes to compile under Visual Studio 14.0 |
82 | JDK-8155903 | javafx | graphics | Crash while running imported/w3c/canvas/2d.gradient.interpolate.overlap2.html |
83 | JDK-8156094 | javafx | graphics | ContextMenu shown at wrong position on Windows10 with Extended Screen |
84 | JDK-8158688 | javafx | graphics | Revert fix for JDK‑8150181 to push it with the correct commit message |
85 | JDK-8159860 | javafx | graphics | JavaFX Path drawing appears to leak native memory |
86 | JDK-8089563 | javafx | web | Javascript Timing Events stop work on system clock changes at past |
87 | JDK-8130727 | javafx | web | WebView Tooltip position no longer changes in 8u60 |
88 | JDK-8146211 | javafx | web | WebView can't alert from a timer |
89 | JDK-8149045 | javafx | web | Debug build is not working after new WebKit upgrade |
90 | JDK-8150800 | javafx | web | NullPointer exception in WebView |
91 | JDK-8152393 | javafx | web | SQL Server Reporting Services in WebViews shows 401 |
92 | JDK-8152420 | javafx | web | [WebView] Icon font doesn't work if single page application will be loaded from jar |
93 | JDK-8154127 | javafx | web | Need to document that JavaScript to Java bindings use weak references |
94 | JDK-8156698 | javafx | web | Update to newer version of WebKit |
95 | JDK-8157145 | javafx | web | DRT crash at fast/css‑generated‑content/initial‑letter‑basic.html |
96 | JDK-8157384 | javafx | web | Update java‑wrappers for WebKit generated classes following WebKit update |
97 | JDK-8157559 | javafx | web | Linux: Javascript Timing Events stop work on system clock changes at past |
98 | JDK-8158056 | javafx | web | Linux: libjfxwebkit.so has hard‑coded path |
99 | JDK-8158926 | javafx | web | Char value is set as integer, not as character |
100 | JDK-8159549 | javafx | web | Add timestamp to WebView Keyboard Event |
101 | JDK-8159614 | javafx | web | Can't get file size with javascript |
102 | JDK-8159868 | javafx | web | the JVM for our Swing application crashes, once we login into our application server |
103 | JDK-8160260 | javafx | web | WebView cannot render CSS background image with SVG data |
104 | JDK-8160326 | javafx | web | Char value is returned as integer, not as character |
105 | JDK-8160388 | javafx | web | Test Case Failure in CallBackTest |
106 | JDK-8160400 | javafx | web | WebView can't alert from a timer |
107 | JDK-8160563 | javafx | web | jvm crash at javafx com.sun.webkit.WebPage.twkPrePaint (GFlag + Heap verification) |
108 | JDK-8160757 | javafx | web | Implement overridePreference() for DRT framework |
109 | JDK-8160769 | javafx | web | [WebView] Unable to tile SVG image using css background property |
110 | JDK-8160837 | javafx | web | WebEngine doesn't handle html5 color picker |
111 | JDK-8161137 | javafx | web | Assertion fails with https://html‑online.com/editor/ |
112 | JDK-8161258 | javafx | web | [Win] Timer functionality is broken after JDK‑8089563 |
113 | JDK-8161405 | javafx | web | [OS X] Compilation Issue in WebPage.cpp |
114 | JDK-8161699 | javafx | web | Fix compilation warnings in WebCore and JavaScriptCore |
115 | JDK-8161724 | javafx | web | EOFException in GZIPInputStream.readUByte while browsing |
116 | JDK-8162949 | javafx | web | [WebView] WebView can't display social network icons on wellsfargo.com |
117 | JDK-8162977 | javafx | web | General sibling selector is broken for selected input boxes in WebView |
118 | JDK-8162979 | javafx | web | Website weibo.com cannot be loaded |
119 | JDK-8163582 | javafx | web | JavaFX browser can get stuck in an infinite loop when calling path.getTotalLength() |
120 | JDK-8164076 | javafx | web | [Windows] JavaFX crash in WebPage.twkOpen in 8u112 when closing WebView while debugging |
121 | JDK-8165853 | javafx | web | Loading "https://www.windyty.com" with JavaFX WebView crashes JVM. |
122 | JDK-8146975 | other-libs | corba | NullPointerException in IIOPInputStream.inputClassFields |
123 | JDK-8085903 | security-libs | java.security | New fix for memory leak in ProtectionDomain cache |
124 | JDK-8098581 | security-libs | java.security | SecureRandom.nextBytes() hurts performance with small size requests |
125 | JDK-8147969 | security-libs | java.security | Print size of DH keysize when errors are encountered |
126 | JDK-8154009 | security-libs | java.security | Some methods of java.security.Security require more permissions, than necessary |
127 | JDK-8160267 | security-libs | javax.crypto | Ucrypto config file cannot be read when ‑Dfile.encoding=UTF‑16 is set |
128 | JDK-8160723 | security-libs | javax.crypto | Improve jurisdiction policy file signing exception |
129 | JDK-8134232 | security-libs | javax.crypto:pkcs11 | KeyStore.load() throws an IOException with a wrong cause in case of wrong password |
130 | JDK-8158873 | security-libs | javax.crypto:pkcs11 | LoadKeystore.java test is failing |
131 | JDK-8133070 | security-libs | javax.net.ssl | Hot lock on BulkCipher.isAvailable |
132 | JDK-8158111 | security-libs | javax.net.ssl | Make handling of 3rd party providers more stable |
133 | JDK-8158059 | security-libs | javax.security | The fix for 8050402 was partially committed |
134 | JDK-8022582 | security-libs | org.ietf.jgss:krb5 | Relax response flags checking in sun.security.krb5.KrbKdcRep.check. |
135 | JDK-8160518 | security-libs | org.ietf.jgss:krb5 | Semicolon is not recognized as comment starting character (Kerberos) |
136 | JDK-8067964 | tools | Native2ascii doesn't close one of the streams it opens | |
137 | JDK-8129740 | tools | javac | Incorrect class file created when passing lambda in inner class constructor |
138 | JDK-8143640 | tools | launcher | Showing incorrect result while passing specific argument in the Java launcher tools |
139 | JDK-8153781 | xml | jaxp | Issue in XMLScanner: EXPECTED_SQUARE_BRACKET_TO_CLOSE_INTERNAL_SUBSET when skipping large DOCTYPE section with CRLF at wrong place |