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

EGL: Changing out jpeg images causes a NullPointerException

    XMLWordPrintable

Details

    Description

      I am trying to create a slide show type of application where I display images via an ImageView/StackPanel. Every once in a while The screen shows blank and I get an exception in the main application.

      java.lang.NullPointerException
      at com.sun.prism.impl.BaseGraphics.drawTexture(BaseGraphics.java:389)
      at com.sun.prism.impl.ps.BaseShaderGraphics.drawTexture(BaseShaderGraphics.java:138)
      at com.sun.javafx.sg.prism.NGImageView.renderContent(NGImageView.java:122)
      at com.sun.javafx.sg.prism.NGNode$CacheFilter.impl_renderNodeToCache(NGNode.java:1996)
      at com.sun.javafx.sg.prism.BaseCacheFilter.render(BaseCacheFilter.java:238)
      at com.sun.javafx.sg.prism.NGNode$CacheFilter.render(NGNode.java:1939)
      at com.sun.javafx.sg.prism.NGNode.renderCached(NGNode.java:1880)
      at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:1592)
      at com.sun.javafx.sg.prism.NGImageView.doRender(NGImageView.java:102)
      at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1520)
      at com.sun.javafx.sg.prism.NGGroup.renderChildren(NGGroup.java:233)
      at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:199)
      at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:1249)
      at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:1598)
      at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1520)
      at com.sun.javafx.tk.quantum.ViewPainter.doPaint(ViewPainter.java:99)
      at com.sun.javafx.tk.quantum.AbstractPainter.paintImpl(AbstractPainter.java:210)
      at com.sun.javafx.tk.quantum.PresentingPainter.run(PresentingPainter.java:95)
      at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
      at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:304)
      at com.sun.javafx.tk.RenderJob.run(RenderJob.java:58)
      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
      at com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(QuantumRenderer.java:129)
      at java.lang.Thread.run(Thread.java:724)

      Followed by
      ES2 Vram Pool: 26,723,730 used (10.0%), 26,723,730 managed (10.0%), 268,435,456 total
      6 total resources being managed
      1 permanent resources (16.7%)
      3 resources locked (50.0%)
      3 resources contain interesting data (50.0%)
      0 resources disappeared (0.0%)

      I have traced this problem through to the nTexImage2D0 call in com.sun.prism.es2.GLContext.java (549) but that is as far as I can go. The call is returning false and printing out a glerror 0x505 which is out of memory and I believe it is talking about memory in the gpu.

      I have created a simple program that causes the issue on my device. I will try to paste it in a comment. If not I can be reached at tom@lemmons.net and can send it to you.

      Attachments

        Issue Links

          Activity

            People

              ddhill David Hill (Inactive)
              duke J. Duke
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:
                Imported: