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

NGCanvas fails to unlock temporary texture while processing non-SrcOver blend modes

    XMLWordPrintable

    Details

      Description

      Running the "FullTutorial" CanvasTest toy from rt-closed, we get texture statistics being printed out starting from the "Operations" tab showing that some textures are left locked.

      One source of these locked textures are due to a bug in NGCanvas that leaves a temporary texture locked after applying a non-SrcOver blending mode with the following stack trace showing where they were locked:

           [java] java.lang.Throwable: 1
           [java] at com.sun.prism.impl.ManagedResource.lock(ManagedResource.java:286)
           [java] at com.sun.prism.impl.ManagedResource.<init>(ManagedResource.java:197)
           [java] at com.sun.prism.impl.DisposerManagedResource.<init>(DisposerManagedResource.java:34)
           [java] at com.sun.prism.es2.ES2TextureResource.<init>(ES2TextureResource.java:34)
           [java] at com.sun.prism.es2.ES2RTTexture.create(ES2RTTexture.java:285)
           [java] at com.sun.prism.es2.ES2ResourceFactory.createRTTexture(ES2ResourceFactory.java:101)
           [java] at com.sun.prism.es2.ES2ResourceFactory.createRTTexture(ES2ResourceFactory.java:97)
           [java] at com.sun.javafx.sg.prism.NGCanvas$RenderBuf.validate(NGCanvas.java:193)
           [java] at com.sun.javafx.sg.prism.NGCanvas.renderStream(NGCanvas.java:901)
           [java] at com.sun.javafx.sg.prism.NGCanvas.renderContent(NGCanvas.java:522)

      The rest are coming from the WebView code and a related bug RT-33625 was filed on those unbalanced lock()s.

      (To get the stack traces of where unmatched locks occur, set the ManagedResource.trackLockSources flag to true...)

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              flar Jim Graham
              Reporter:
              flar Jim Graham
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved:
                Imported: