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

WebView fails to unlock some texture resources

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: P2 P2
    • 8
    • 8
    • javafx
    • web

      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 or two of these locked textures are due to a bug in NGCanvas that leaves a temporary texture locked after applying a non-SrcOver blending mode, but the rest (about 26) of the locked textures come from the WCGraphics code 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.scenario.effect.impl.prism.ps.PPSDrawable.create(PPSDrawable.java:67)
           [java] at com.sun.scenario.effect.impl.prism.ps.PPSRenderer.createCompatibleImage(PPSRenderer.java:164)
           [java] at com.sun.scenario.effect.impl.prism.ps.PPSRenderer.createCompatibleImage(PPSRenderer.java:65)
           [java] at com.sun.scenario.effect.Effect.createCompatibleImage(Effect.java:466)
           [java] at com.sun.javafx.webkit.prism.WCGraphicsPrismContext$Composite.blend(WCGraphicsPrismContext.java:1324)
           [java] at com.sun.javafx.webkit.prism.WCGraphicsPrismContext$Composite.paint(WCGraphicsPrismContext.java:1307)
           [java] at com.sun.javafx.webkit.prism.WCGraphicsPrismContext$Composite.paint(WCGraphicsPrismContext.java:1287)
           [java] at com.sun.javafx.webkit.prism.WCGraphicsPrismContext.drawImage(WCGraphicsPrismContext.java:700)
           [java] at com.sun.webkit.graphics.GraphicsDecoder.drawImage(GraphicsDecoder.java:408)
           [java] at com.sun.webkit.graphics.GraphicsDecoder.decode(GraphicsDecoder.java:166)
           [java] at com.sun.webkit.graphics.WCRenderQueue.decode(WCRenderQueue.java:69)
           [java] at com.sun.webkit.graphics.WCRenderQueue.decode(WCRenderQueue.java:80)
           [java] at com.sun.webkit.graphics.WCRenderQueue.decode(WCRenderQueue.java:86)
           [java] at com.sun.webkit.graphics.GraphicsDecoder.decode(GraphicsDecoder.java:322)
           [java] at com.sun.webkit.graphics.WCRenderQueue.decode(WCRenderQueue.java:69)
           [java] at com.sun.webkit.WebPage.paint2GC(WebPage.java:669)
           [java] at com.sun.webkit.WebPage.paint(WebPage.java:637)
           [java] at com.sun.javafx.sg.prism.NGWebView.renderContent(NGWebView.java:73)

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

            peterz Peter Zhelezniakov
            flar Jim Graham
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported: