Hi,

I am finally getting around to updating my Batik CVS and testing
Thomas' recent fixes
(http://koala.ilog.fr/batik/mlists/batik-dev/archives/msg04022.html)
and I found something that seems to have broken.  My batik build is
the absolute latest from CVS.

My code does the following, which used to work prior to the new batik
changes: I install a doc in a JSVGComponent, allow the user to
interactively modify the doc.  Then I load a new doc, and when I get a
managerStopped event, I know it's "safe" to access the old doc, using
the ImageTranscoder to rasterize it.  When I do this, I get the
following stack trace:

java.lang.NullPointerException
at org.apache.batik.bridge.SVGImageElementBridge.dispose(SVGImageElementBridge.java:716)
at org.apache.batik.bridge.AbstractGraphicsNodeBridge.disposeTree(AbstractGraphicsNodeBridge.java:276)
at org.apache.batik.bridge.AbstractGraphicsNodeBridge.disposeTree(AbstractGraphicsNodeBridge.java:279)
at org.apache.batik.bridge.SVGUseElementBridge.buildCompositeGraphicsNode(SVGUseElementBridge.java:215)
at org.apache.batik.bridge.SVGUseElementBridge.createGraphicsNode(SVGUseElementBridge.java:121)
at org.apache.batik.bridge.GVTBuilder.buildGraphicsNode(GVTBuilder.java:220)
at org.apache.batik.bridge.GVTBuilder.buildComposite(GVTBuilder.java:186)
at org.apache.batik.bridge.GVTBuilder.buildGraphicsNode(GVTBuilder.java:226)
at org.apache.batik.bridge.GVTBuilder.buildComposite(GVTBuilder.java:186)
at org.apache.batik.bridge.GVTBuilder.buildGraphicsNode(GVTBuilder.java:226)
at org.apache.batik.bridge.GVTBuilder.buildComposite(GVTBuilder.java:186)
at org.apache.batik.bridge.GVTBuilder.build(GVTBuilder.java:108)
at org.apache.batik.transcoder.SVGAbstractTranscoder.transcode(SVGAbstractTranscoder.java:238)
at org.apache.batik.transcoder.image.ImageTranscoder.transcode(ImageTranscoder.java:122)
at org.apache.batik.transcoder.XMLAbstractTranscoder.transcode(XMLAbstractTranscoder.java:174)
at org.apache.batik.transcoder.SVGAbstractTranscoder.transcode(SVGAbstractTranscoder.java:188)
at edu.rutgers.elearning.util.SVGRasterizer.rasterizeSVG(SVGRasterizer.java:80)
at edu.rutgers.elearning.presenter.DisplaySlideHelper._saveSlide(DisplaySlideHelper.java:240)
at edu.rutgers.elearning.presenter.DisplaySlideHelper.access$200(DisplaySlideHelper.java:27)
at edu.rutgers.elearning.presenter.DisplaySlideHelper$2.managerStopped(DisplaySlideHelper.java:122)
at org.apache.batik.swing.svg.JSVGComponent$9.run(JSVGComponent.java:1702)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:178)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:454)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:145)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:137)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:100)



Could this be related to the recent memory leak fix in the BridgeContext? Is watching for "managerStopped" no longer the recommended way to determine when it's safe to access an unloaded doc?

Thanks.

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to