Hi:
Greetings to all the Batik Community.
I wanted to point out this Bug again, for it to be salvaged from oblivion.
Regards,
Andres
Hello all:
I want to report what appears to be a bug in the SVGImageElementBridge implementation. I have tried it with Batik release 1.5 and 1.5.1.
In a dynamic JSVGCanvas, on the UpdateManager thread, when i remove a SVGOMImageElement (that represents an embedded SVG image, i.e. CompositeGraphicsNode) using
AbstractParentNode.removeChild(SVGOMElement);
The removed SVGOMImageElement cannot be garbage collected because it is still referenced by an instance of SVGImageElementBridge.ForwardEventListener (it is listed as imgElement of SVGImageElementBridge... by my profiler software)
I have tried the same method for SVGOMImageElement loading a embedded PNG image (i.e. RasterImageNode) and the node does get released of all its references and it is garbage collected.
Also, I have tried it with SVG elements constructed within the app ("rect", "g", etc....) and they also are released completly, and disposed of properly. The only problem I found is with SVGImageElement loading a external SVG images (i.e CompositeGraphicsNode).
This situation generates a considerable Memory Leak if you want to add-remove dynamically external SVG images into your JSVGCanvas document, since every remove will leave the removed SVGOMImageElement lingering there without being released for disposal, and at some point it saturates the JVM allocated memory and crashes the application.
If anybody has found a solution to this issue, i would appreciate some help.
Andres.
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]