JDK-8179014 : JFileChooser with Windows look and feel crashes on win 10
  • Type: Bug
  • Component: client-libs
  • Sub-Component: java.awt
  • Affected Version: 8,9
  • Priority: P2
  • Status: Resolved
  • Resolution: Fixed
  • OS: windows_10
  • CPU: x86
  • Submitted: 2017-04-19
  • Updated: 2019-03-23
  • Resolved: 2017-05-11
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 10 JDK 8 JDK 9 Other
10Fixed 8u141Fixed 9 b172Fixed openjdk7uFixed
Related Reports
Duplicate :  
Duplicate :  
Duplicate :  
Duplicate :  
Duplicate :  
Duplicate :  
Duplicate :  
Duplicate :  
Duplicate :  
Duplicate :  
Duplicate :  
Duplicate :  
Duplicate :  
Duplicate :  
Duplicate :  
Duplicate :  
Relates :  
Relates :  
Relates :  
Description
FULL PRODUCT VERSION :
Java(TM) SE Runtime Environment (8.0_131-b11) (build 1.8.0_131-b11)

FULL OS VERSION :
Windows 10 x64, 1703 (Build 15063.138)

EXTRA RELEVANT SYSTEM CONFIGURATION :
Every java programm will crash when opening JFileChooser with Windows look and feel

A DESCRIPTION OF THE PROBLEM :
Every application for example 

- yED
- JOSM
- Minecraft
- NetBeans

will crash when a JFileChooser is opened with windows look and feel. Changing it to Nimbus for example and the application will run!

Crashes started after update to Win10 1703.


THE PROBLEM WAS REPRODUCIBLE WITH -Xint FLAG: No

THE PROBLEM WAS REPRODUCIBLE WITH -server FLAG: Yes

REGRESSION.  Last worked in version 8u121

STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
Write a small test Application with a JFileChooser

EXPECTED VERSUS ACTUAL BEHAVIOR :
Should display open JFileChooser
ERROR MESSAGES/STACK TRACES THAT OCCUR :
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x0000000062146adf, pid=8912, tid=0x00000000000009b8
#
# JRE version: Java(TM) SE Runtime Environment (8.0_131-b11) (build 1.8.0_131-b11)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (25.131-b11 mixed mode windows-amd64 compressed oops)
# Problematic frame:
# C  [msvcr100.dll+0x36adf]
#
# Failed to write core dump. Minidumps are not enabled by default on client versions of Windows
#
# If you would like to submit a bug report, please visit:
#   http://bugreport.java.com/bugreport/crash.jsp
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#

---------------  T H R E A D  ---------------

Current thread (0x000000001d827800):  JavaThread "Swing-Shell" daemon [_thread_in_native, id=2488, stack(0x000000001f680000,0x000000001f780000)]

siginfo: ExceptionCode=0xc0000005, reading address 0x0000000000000000

Registers:
RAX=0x0000000000000000, RBX=0x000000001f77ed20, RCX=0x0000000000000000, RDX=0x000000001cbf91d0
RSP=0x000000001f77ecc8, RBP=0x000000001f77eeb0, RSI=0x000000000000038c, RDI=0x000000001d8279f8
R8 =0x000000001cbf91d0, R9 =0x0000000000000000, R10=0x0000000000000000, R11=0x000000001f77bee0
R12=0x0000000000000000, R13=0x000000001f77eed0, R14=0x000000001f77ee98, R15=0x000000001d827800
RIP=0x0000000062146adf, EFLAGS=0x0000000000010246

Top of Stack: (sp=0x000000001f77ecc8)
0x000000001f77ecc8:   0000000061699d36 0000000000000000
0x000000001f77ecd8:   000000001d8279f8 000000000000038c
0x000000001f77ece8:   000000001cbf91d0 000000001d8279f8
0x000000001f77ecf8:   000000006169a6f9 000000001cbf91d0
0x000000001f77ed08:   00000000fe31e540 0000000000000005
0x000000001f77ed18:   000000001d827800 0000000000000000
0x000000001f77ed28:   0000000000000000 0000000012f1b300
0x000000001f77ed38:   000000001f77ed00 0000000000000000
0x000000001f77ed48:   0000000000000000 000000001f77edc8
0x000000001f77ed58:   000000000274835d 000000001d827800
0x000000001f77ed68:   00000000619f2ac2 0000000000000000
0x000000001f77ed78:   0000000000000000 00000000fe928da8
0x000000001f77ed88:   0000000000000000 0000000000000000
0x000000001f77ed98:   0000000002894275 0000000000000058
0x000000001f77eda8:   000000001f77ee00 00000000fe31eba0
0x000000001f77edb8:   00000000fe31ec00 0000000100000000 

Instructions: (pc=0x0000000062146adf)
0x0000000062146abf:   99 03 00 cc 33 c0 48 8b 5c 24 40 48 8b 74 24 48
0x0000000062146acf:   48 83 c4 30 5f c3 cc cc cc cc cc cc cc 48 8b c1
0x0000000062146adf:   0f b7 10 48 83 c0 02 66 85 d2 75 f4 48 2b c1 48
0x0000000062146aef:   d1 f8 48 ff c8 c3 cc cc cc cc cc cc cc 45 33 c0 


Register to memory mapping:

RAX=0x0000000000000000 is an unknown value
RBX=0x000000001f77ed20 is pointing into the stack for thread: 0x000000001d827800
RCX=0x0000000000000000 is an unknown value
RDX=0x000000001cbf91d0 is an unknown value
RSP=0x000000001f77ecc8 is pointing into the stack for thread: 0x000000001d827800
RBP=0x000000001f77eeb0 is pointing into the stack for thread: 0x000000001d827800
RSI=0x000000000000038c is an unknown value
RDI=0x000000001d8279f8 is an unknown value
R8 =0x000000001cbf91d0 is an unknown value
R9 =0x0000000000000000 is an unknown value
R10=0x0000000000000000 is an unknown value
R11=0x000000001f77bee0 is pointing into the stack for thread: 0x000000001d827800
R12=0x0000000000000000 is an unknown value
R13=0x000000001f77eed0 is pointing into the stack for thread: 0x000000001d827800
R14=0x000000001f77ee98 is pointing into the stack for thread: 0x000000001d827800
R15=0x000000001d827800 is a thread


Stack: [0x000000001f680000,0x000000001f780000],  sp=0x000000001f77ecc8,  free space=1019k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C  [msvcr100.dll+0x36adf]

Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
J 2701  sun.awt.shell.Win32ShellFolder2.getDisplayNameOf(JJI)Ljava/lang/String; (0 bytes) @ 0x00000000028412c9 [0x0000000002841280+0x49]
j  sun.awt.shell.Win32ShellFolder2.access$1600(JJI)Ljava/lang/String;+4
j  sun.awt.shell.Win32ShellFolder2$13.call()Ljava/lang/String;+15
j  sun.awt.shell.Win32ShellFolder2$13.call()Ljava/lang/Object;+1
J 1987 C1 java.util.concurrent.FutureTask.run()V (126 bytes) @ 0x0000000002d4764c [0x0000000002d47400+0x24c]
j  java.util.concurrent.ThreadPoolExecutor.runWorker(Ljava/util/concurrent/ThreadPoolExecutor$Worker;)V+95
j  java.util.concurrent.ThreadPoolExecutor$Worker.run()V+5
j  sun.awt.shell.Win32ShellFolderManager2$ComInvoker$3.run()V+7
j  java.lang.Thread.run()V+11
v  ~StubRoutines::call_stub

---------------  P R O C E S S  ---------------

Java Threads: ( => current thread )
=>0x000000001d827800 JavaThread "Swing-Shell" daemon [_thread_in_native, id=2488, stack(0x000000001f680000,0x000000001f780000)]
  0x000000001d6f4000 JavaThread "Image Fetcher 0" daemon [_thread_blocked, id=14476, stack(0x000000001f580000,0x000000001f680000)]
  0x000000001d682800 JavaThread "D3D Screen Updater" daemon [_thread_blocked, id=10040, stack(0x000000001e970000,0x000000001ea70000)]
  0x0000000002640800 JavaThread "DestroyJavaVM" [_thread_blocked, id=6060, stack(0x0000000002540000,0x0000000002640000)]
  0x00000000166a1800 JavaThread "AWT-EventQueue-0" [_thread_blocked, id=10552, stack(0x0000000018320000,0x0000000018420000)]
  0x00000000166a1000 JavaThread "TimerQueue" daemon [_thread_blocked, id=9660, stack(0x0000000018220000,0x0000000018320000)]
  0x00000000165b1000 JavaThread "AWT-Windows" daemon [_thread_in_native, id=4860, stack(0x0000000017050000,0x0000000017150000)]
  0x00000000165b0800 JavaThread "AWT-Shutdown" [_thread_blocked, id=6064, stack(0x0000000016f50000,0x0000000017050000)]
  0x00000000165af800 JavaThread "Java2D Disposer" daemon [_thread_blocked, id=12764, stack(0x0000000016da0000,0x0000000016ea0000)]
  0x000000001514c800 JavaThread "Service Thread" daemon [_thread_blocked, id=13096, stack(0x0000000015cc0000,0x0000000015dc0000)]
  0x00000000150c0800 JavaThread "C1 CompilerThread3" daemon [_thread_blocked, id=11556, stack(0x0000000015bc0000,0x0000000015cc0000)]
  0x00000000150bb800 JavaThread "C2 CompilerThread2" daemon [_thread_blocked, id=6052, stack(0x0000000015ac0000,0x0000000015bc0000)]
  0x00000000150ba000 JavaThread "C2 CompilerThread1" daemon [_thread_blocked, id=9588, stack(0x00000000159c0000,0x0000000015ac0000)]
  0x00000000150b8000 JavaThread "C2 CompilerThread0" daemon [_thread_blocked, id=4560, stack(0x00000000158c0000,0x00000000159c0000)]
  0x00000000131ce000 JavaThread "Attach Listener" daemon [_thread_blocked, id=15076, stack(0x00000000157c0000,0x00000000158c0000)]
  0x00000000150bf800 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=10400, stack(0x00000000156c0000,0x00000000157c0000)]
  0x00000000150b0800 JavaThread "Finalizer" daemon [_thread_blocked, id=12532, stack(0x0000000015490000,0x0000000015590000)]
  0x0000000002734000 JavaThread "Reference Handler" daemon [_thread_blocked, id=8920, stack(0x0000000014f90000,0x0000000015090000)]

Other Threads:
  0x00000000131b9800 VMThread [stack: 0x0000000014e90000,0x0000000014f90000] [id=2856]
  0x0000000015183000 WatcherThread [stack: 0x0000000015dc0000,0x0000000015ec0000] [id=1140]

VM state:not at safepoint (normal execution)

VM Mutex/Monitor currently owned by a thread: None

Heap:
 PSYoungGen      total 18944K, used 16517K [0x00000000fd580000, 0x00000000fea80000, 0x0000000100000000)
  eden space 16384K, 85% used [0x00000000fd580000,0x00000000fe322e80,0x00000000fe580000)
  from space 2560K, 99% used [0x00000000fe8000