This is a Linux on es2 pipe bug, and works fine on Windows (es2 pipe). I noticed this problem once I fixed RT-18892. This problem is always reproducible with the following steps:
1) Run helloworld/HelloModality
2) Click on "Create Dialog" button to create a new Stage
3) Click the "Dismiss" button in the newly created Stage
4) Now you should see that the program is terminated with GLXBadDrawable error
jjfx -Dprism.order=es2 helloworld/HelloModality
The program 'java' received an X Window System error.
This probably reflects a bug in the program.
The error was 'GLXBadDrawable'.
(Details: serial 133 error_code 146 request_code 135 minor_code 26)
(Note to programmers: normally, X errors are reported asynchronously;
that is, you will receive the error a while after causing it.
To debug your program, run it with the --sync command line
option to change this behavior. You can then get a meaningful
backtrace from your debugger if you break on the gdk_x_error() function.)
cyang@cyang-Latitude-E6510:~/java/javafx/210/jfx/rt-closed/toys/HelloWorld$