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

NPE com.sun.prism.d3d.D3DTextureData.getContext with multiple Canvas component to render diagram, using javafx Graphics

XMLWordPrintable

    • generic
    • generic

      A DESCRIPTION OF THE PROBLEM :
      My application uses multiple Canvas components to render diagrams, using Graphics.
      When there are more diagram open, I got this exception:

      java.lang.NullPointerException: Cannot invoke "com.sun.prism.d3d.D3DTextureData.getContext()" because the return value of "com.sun.prism.d3d.D3DTextureResource.getResource()" is null
      at com.sun.prism.d3d.D3DTexture.getContext(D3DTexture.java:85)
      at com.sun.prism.d3d.D3DTexture.update(D3DTexture.java:210)
      at com.sun.prism.d3d.D3DTexture.update(D3DTexture.java:154)
      at com.sun.prism.impl.BaseContext.flushMask(BaseContext.java:115)
      at com.sun.prism.impl.BaseContext.drawQuads(BaseContext.java:124)
      at com.sun.prism.impl.VertexBuffer.flush(VertexBuffer.java:98)
      at com.sun.prism.impl.BaseContext.flushVertexBuffer(BaseContext.java:107)
      at com.sun.prism.impl.ps.BaseShaderContext.setRenderTarget(BaseShaderContext.java:789)
      at com.sun.prism.impl.BaseContext.setRenderTarget(BaseContext.java:149)
      at com.sun.prism.impl.BaseGraphics.<init>(BaseGraphics.java:107)
      at com.sun.prism.impl.ps.BaseShaderGraphics.<init>(BaseShaderGraphics.java:86)
      at com.sun.prism.d3d.D3DGraphics.<init>(D3DGraphics.java:40)
      at com.sun.prism.d3d.D3DGraphics.create(D3DGraphics.java:63)
      at com.sun.prism.d3d.D3DRTTexture.createGraphics(D3DRTTexture.java:80)
      at com.sun.prism.d3d.D3DResourceFactory.createRTTexture(D3DResourceFactory.java:329)
      at com.sun.prism.d3d.D3DResourceFactory.createRTTexture(D3DResourceFactory.java:281)
      at com.sun.prism.d3d.D3DResourceFactory.createRTTexture(D3DResourceFactory.java:63)
      at com.sun.javafx.sg.prism.NGCanvas$RenderBuf.validate(NGCanvas.java:212)
      at com.sun.javafx.sg.prism.NGCanvas.initCanvas(NGCanvas.java:644)
      at com.sun.javafx.sg.prism.NGCanvas.renderForcedContent(NGCanvas.java:628)
      at com.sun.javafx.sg.prism.NGGroup.renderForcedContent(NGGroup.java:232)
      at com.sun.javafx.sg.prism.NGGroup.renderForcedContent(NGGroup.java:232)
      at com.sun.javafx.sg.prism.NGGroup.renderForcedContent(NGGroup.java:232)
      at com.sun.javafx.sg.prism.NGGroup.renderForcedContent(NGGroup.java:232)
      at com.sun.javafx.sg.prism.NGGroup.renderForcedContent(NGGroup.java:232)
      at com.sun.javafx.sg.prism.NGGroup.renderForcedContent(NGGroup.java:232)
      at com.sun.javafx.sg.prism.NGGroup.renderForcedContent(NGGroup.java:232)
      at com.sun.javafx.sg.prism.NGGroup.renderForcedContent(NGGroup.java:232)
      at com.sun.javafx.sg.prism.NGGroup.renderForcedContent(NGGroup.java:232)
      at com.sun.javafx.sg.prism.NGGroup.renderForcedContent(NGGroup.java:232)
      at com.sun.javafx.tk.quantum.ViewPainter.paintImpl(ViewPainter.java:331)
      at com.sun.javafx.tk.quantum.PresentingPainter.run(PresentingPainter.java:92)
      at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
      at java.base/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305)
      at com.sun.javafx.tk.RenderJob.run(RenderJob.java:58)
      at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
      at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)



      FREQUENCY : always


            pnarayanaswa Praveen Narayanaswamy
            webbuggrp Webbug Group
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: