Brian Modra wrote:
Hi, in org.apache.batik.util.RunnableQueue, where it calls the link's
run() method, its vulnerable - because any exceptions thrown in the
run() method will cause the queue to stop.
here's a simple fix:
from line 163 (or thereabout depending on what version you have)
instead of this:
rable.run();
l.unlock();
runnableInvoked(rable);
wrap the run() in a try { ... } catch... :
I agree that because lots of people are now using the runnable queue
we should
do this. Thanks for pointing it out.
.... also - this bugfix to JSVGComponent:
(To avoid loss of event handling after calling suspendProcessing().)
public void resumeProcessing() {
if (updateManager != null) {
updateManager.resume();
setGraphicsNode(getGraphicsNode(), false);
}
}
... because suspendProcessing is quite likely to get called inside of a
GVT rendering call, which first sets the event dispatcher's root node to
null.. and then once suspended, gvtRenderingCompleted (which would have
reset the node) never gets called.
I don't follow you here. The only place I can find that we call
suspendProcessing is in response
to the user pressing the 'pause' button. Is the intent to give the
users a way to 'restart' event processing
when something goes wrong? Pause/UnPause?
It does appear that gvtRenderingCancelled/Failed should set the root
node on
the event dispatcher.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]