firefox 4: problem with NPN_GetURL target=_self
Deepak Bhole
dbhole at redhat.com
Tue Apr 19 09:32:08 PDT 2011
* Andriy Gapon <avg at icyb.net.ua> [2011-04-19 11:45]:
>
> [sorry for the cross-post but the issue at hand seems to be of dual nature]
>
> I observe a particular problem with Firefox 4 and IcedTea Java plugin.
> The issue can be described in simple terms as follows:
> - the plugin calls the browser via NPN_GetURL(target=_self) [because that's what a
> Java applet instructs it to do]
> - the browser makes a "nested" call back to the plugin via
> NPP_GetValue(NPPVpluginScriptableNPObject)
> - because of the peculiarities of the plugin implementation it gets stuck in this
> nested call until its internal timeout is reached [*]
>
> Now, the problem could be simply attributed to that peculiarity and the case would
> be solved for Firefox. But not quite yet.
>
> The same plugin with the same applet work without the problem with Firefox 3 and
> other browsers.
> I see one difference in the behavior: those browsers call NPP_Destroy in response
> to NPN_GetURL(target=_self). I guess that that makes sense because of the
> target=_self.
>
> [*] The way IcedTea uses glib channels for communication with Java process (applet
> runner) via named pipes precludes "recursive" communication - while a channel
> callback is running its channel seems to be excluded from being polled in the glib
> main loop.
>
Which version of Firefox are you using? I tried the above scenario on FF
4.0 in Fedora 15 and saw no recursive calls.
Having JS call a Java method which then calls NPN_GetURL (via
AppletContext.showDocument()) worked fine for me.
Cheers,
Deepak
> Thank you in advance for any help / insights.
>
> --
> Andriy Gapon
More information about the distro-pkg-dev
mailing list