[rfc][icedtea-web] Fix for PR1157: Applets can hang browser after fatal exception
Jiri Vanek
jvanek at redhat.com
Mon Jan 28 03:40:00 PST 2013
On 01/25/2013 04:56 PM, Adam Domurad wrote:
> This one was took quite some effort to track down. Essentially because Firefox does not hold our plugin out-of-process we can potentially hang the browser if we are not careful.
>
> The issue is explained in comment in patch file PR1157.patch. Basically there was a long timeout in PluginAppletViewer.waitForAppletInit. It was supposed to 'wake up' when an applet dispatched an event signifying it completed loading, but it was not happening in the case of a fatal exception.
>
> No automated reproducer yet, but I believe this patch is simple enough that it can go in before one.
>
> I have added a 'reproducing catalyst' -- pseudo-reproducer.patch. This is NOT a patch intended to go into ITW HEAD. With this patch the worker pool consists of one thread effectively, so the hanging manifests itself very easily. Confirming the patch works with this goes as follow:
> 1. Apply pseudo-reproducer.patch to HEAD
> 2. Run http://jogamp.org/deployment/jogamp-current/jogl-applet-runner-newt-gears-normal-napplet.html and refresh. Firefox should hang, or at least display bizarre behaviour.
> --- this is nothing special - just a failing (ATM) applet
> 3. Apply PR1157.patch on top
> 4. Run the same page and refresh, Firefox should work fine.
>
> ChangeLog for PR1157.patch:
> 2013-XX-XX Adam Domurad <adomurad at redhat.com>
>
> Fix PR1157: Applets can hang browser after fatal exception
> * NEWS: Add entry for PR1157
> * netx/net/sourceforge/jnlp/NetxPanel.java
> (runLoader): Move dispatchAppletEvent into a 'finally' block.
Although I have still some troubles on my old HW with f14, jdk6, it behaves much better and I'm for this one asap:)
It would be nice to try deepak and his sometimes freezing machine to try.
As you told, no special reproducer needed, this is tested by all reprodcuers which throws lunchError. The only lines to be added is some tests that FF have not deadlocked after this. I have this on todo, and I will add later.
Ok. for head.
J.
More information about the distro-pkg-dev
mailing list