Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8125350

EGLFB: Crash when changing windows quickly in HelloMenu application



      Found while trying to reproduce RT-23242, please check that jira again when this one is resolved

      run this application:

      /opt/ejdk1.6.0_32/bin/java -Xbootclasspath/a:top/artifacts/arm-ti/sdk/rt/lib/jfxrt.jar -cp HelloWorld.jar helloworld.HelloMenu

      In the Debug menu, there are several items with sub windows, something not found on the other pull downs.
      I can manipulate the two other pull downs for quite some time with no obvious problems.
      If I pull down the "Debug" menu, and move the mouse down rapidly, JFX will crash with the same trace each time.
      If I pull down the Debug menu with a click, and then sloooooowly trace the mouse down, then the two subwindows will come and go, and it is slightly harder to reproduce the problem, but I can crash the app again with just moving the mouse up and down rapidly.

      I *suspect* that the problem is a disconnect between Glass's window list and the scene graph, and may require more locking in glass - or more state checking during rendering.

      Stack: [0x4da67000,0x4dab7000], sp=0x4dab53b8, free space=312k
      Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
      C [libGLESv2.so+0x16868] glScissor+0x108

      Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
      j com.sun.prism.es2.gl.GLContext.nClearBuffers(JFFFFZZZ)V+0
      j com.sun.prism.es2.gl.GLContext.clearBuffers(Lcom/sun/prism/paint/Color;ZZZ)V+40
      j com.sun.prism.es2.ES2Graphics.clearBuffers(Lcom/sun/prism/es2/ES2Context;Lcom/sun/prism/paint/Color;ZZZ)V+9
      j com.sun.prism.es2.ES2Graphics.clear(Lcom/sun/prism/paint/Color;)V+32
      j com.sun.javafx.tk.quantum.ViewPainter.doPaint(Lcom/sun/prism/Graphics;Lcom/sun/javafx/sg/NodePath;)V+64
      j com.sun.javafx.tk.quantum.AbstractPainter.paintImpl(Lcom/sun/prism/Graphics;)V+298
      j com.sun.javafx.tk.quantum.PresentingPainter.run()V+342
      j java.util.concurrent.Executors$RunnableAdapter.call()Ljava/lang/Object;+4
      j java.util.concurrent.FutureTask$Sync.innerRunAndReset()Z+30
      j java.util.concurrent.FutureTask.runAndReset()Z+4
      j com.sun.prism.render.RenderJob.run()V+1
      j java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Ljava/lang/Runnable;)V+59
      j java.util.concurrent.ThreadPoolExecutor$Worker.run()V+28
      j com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run()V+8
      j java.lang.Thread.run()V+11


          Issue Links



              • Assignee:
                ddhill David Hill (Inactive)
                ddhill David Hill (Inactive)
              • Votes:
                0 Vote for this issue
                5 Start watching this issue


                • Created: