I do a little example for clipping in combination with timeline (animation). When the program runs and windows shows the screensaver and I switch return to the program the program is frozen and a NullPointerException is thrown:
java.lang.NullPointerException
at com.sun.prism.d3d.D3DSwapChain.present(D3DSwapChain.java:42)
at com.sun.javafx.tk.quantum.PaintRunnable.run(PaintRunnable.java:241)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
at java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:317)
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:150)
at com.sun.prism.render.RenderJob.run(RenderJob.java:29)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at com.sun.javafx.tk.quantum.QuantumRenderer$ObservedRunnable.run(QuantumRenderer.java:70)
at java.lang.Thread.run(Thread.java:662)
Repeat the issue:
- Change the time to show the screensaver in Windows to 1 or 2 min.
- Start the program.
- Wait until the screesaver is shown.
- Move the mouse to remove the screensaver.
- Notice the frozen program and the NullPointerException in the IDE.
java.lang.NullPointerException
at com.sun.prism.d3d.D3DSwapChain.present(D3DSwapChain.java:42)
at com.sun.javafx.tk.quantum.PaintRunnable.run(PaintRunnable.java:241)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
at java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:317)
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:150)
at com.sun.prism.render.RenderJob.run(RenderJob.java:29)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at com.sun.javafx.tk.quantum.QuantumRenderer$ObservedRunnable.run(QuantumRenderer.java:70)
at java.lang.Thread.run(Thread.java:662)
Repeat the issue:
- Change the time to show the screensaver in Windows to 1 or 2 min.
- Start the program.
- Wait until the screesaver is shown.
- Move the mouse to remove the screensaver.
- Notice the frozen program and the NullPointerException in the IDE.
- duplicates
-
JDK-8113621 REGRESSION: D3D stops rendering after screen lock on Windows
-
- Closed
-