Closed Bug 1195609 Opened 5 years ago Closed 4 years ago

Async plugin init breaks Asperasoft Connect plugin

Categories

(Core :: Plug-ins, defect)

defect
Not set

Tracking

()

RESOLVED FIXED
Tracking Status
firefox40 --- affected
firefox41 + wontfix

People

(Reporter: aklotz, Unassigned)

References

Details

(Whiteboard: [fixed by Bug 1194488])

Major regression and other plugins are affected, tracking.
When I run this plugin on a local build, the plugin container crashes on an assertion. It looks like the plugin is making calls into the browser outside of the plugin's main thread. NPAPI only supports calls made on the main thread.

I don't want to say that this is definitely the cause of the hang, but at the very least this should be fixed.
Flags: needinfo?(akorchemniy)
Thanks. I'll investigate. Please share stack trace, plugin version if you can.
This is the stack trace that the assertion dumped on my Mac:

Assertion failure: IsPluginThread() (Should be on the plugin's main thread!), at ../../../dist/include/mozilla/plugins/PluginMessageUtils.h:203
#01: _ZN12_GLOBAL__N_115RequestCallback13returnMessageESs[/Users/dblohm7/Library/Internet Plug-Ins/Aspera Web 3.6.1.110647.plugin/Contents/MacOS/Aspera Web +0x960c]
#02: _ZN12_GLOBAL__N_115RequestCallback14handleCallbackEPv[/Users/dblohm7/Library/Internet Plug-Ins/Aspera Web 3.6.1.110647.plugin/Contents/MacOS/Aspera Web +0x94ec]
#03: _ZN7Connect3Web13RequestWorker17processOneRequestEv[/Users/dblohm7/Library/Internet Plug-Ins/Aspera Web 3.6.1.110647.plugin/Contents/MacOS/Aspera Web +0x32029]
#04: _ZN7Connect3Web13RequestWorker3runEv[/Users/dblohm7/Library/Internet Plug-Ins/Aspera Web 3.6.1.110647.plugin/Contents/MacOS/Aspera Web +0x31f36]
#05: start_helper[/Users/dblohm7/Library/Internet Plug-Ins/Aspera Web 3.6.1.110647.plugin/Contents/MacOS/Aspera Web +0x31642]
#06: _pthread_body[/usr/lib/system/libsystem_pthread.dylib +0x3268]
#07: _pthread_body[/usr/lib/system/libsystem_pthread.dylib +0x31e5]
Aaron, I am following up on the FF41+ tracked bugs and wondering whether you believe there is a fix in the works? Do we have enough information or the investigation on this may go beyond 41 release and we might need to consider wontfix'ing this for 41? Thanks!
Flags: needinfo?(aklotz)
We're going to whitelist a set of mainstream plugins that are considered "safe" for async init. Once that lands we can resolve this as this particular plugin will no longer be affected.
Depends on: 1194488
Flags: needinfo?(aklotz)
Given comment 6, and the fact that bug 1194488 was fixed, setting the status of this bug as resolved fixed.
Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Flags: qe-verify+
QA Contact: petruta.rasa
Whiteboard: [fixed by Bug 1194488]
mozilla / Mozilla1! login is no longer valid on https://faspex.com .

Akorchemniy, could you please reenable this account so that I can verify if it works. 

Or, if not, please confirm the fix using latest Nightly 43.0a1 build[1] or Firefox 41 beta 9 [2] when available.

[1] https://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-mozilla-central/
[2] https://ftp.mozilla.org/pub/mozilla.org/firefox/candidates/41.0b9-candidates/build1/
Previous account re-activated. I'll have our QA verify as well.
Flags: needinfo?(akorchemniy)
Thanks, I can log in now. 
I've tested under win 7 64-bit and Mac OS X 10.9.5.

While I don't reproduce the hang on Firefox 40.0RC, the plugin connects here and everything seems to work fine.

Using Firefox 41 beta 1 and Firefox 41 beta 9, I obtained the same results -> the plugin crashes and Aspera Connect doesn't launch.

Browser console error:
TypeError: a.httpRequestImplementation is not a function asperaweb-4.min.js:9:3033

The plugin crashes also when dom.ipc.plugins.asyncInit.enabled pref is set to false.

Aaron, any thoughts on this?
Flags: needinfo?(aklotz)
That's going to be the assertions in comment 2. The plugin is calling into the browser off the main thread which has never been supported in NPAPI. There were assertions added a while back to catch things like this, which must be what we're seeing (and is why we're seeing it when asyncInit is off as well).

TL;DR: Plugin bug, wontfix.
Flags: needinfo?(aklotz)
Removing [qe-verify+] based on Comment 10 and Comment 11, there's nothing more manual QA can do here.
Flags: qe-verify+
Bug addressed in plugin.
You need to log in before you can comment on or make changes to this bug.