Closed Bug 535207 Opened 12 years ago Closed 11 years ago

Failing to initialize plugin subprocess triggers RUNTIMEABORT in the parent

Categories

(Core :: IPC, defect)

defect
Not set
normal

Tracking

()

RESOLVED WORKSFORME

People

(Reporter: cjones, Unassigned)

References

Details

Attachments

(1 file, 1 obsolete file)

This is because nsNPAPI* ends up calling NP_Shutdown() on the PluginModuleParent even when it fails to initialize, and NP_Shutdown() ends up calling *Channel::Close() when the channel is already closed.  I'm not really sure which of those two is at fault here, but regardless we probably need the fix to be in the new code for compatibility reasons.
Blocks: OOPP
The crash is gone now, thanks to bug 535298. Now all that's left is the hang,

#0  0x000000336ba0b309 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007fdc6fcc97ec in PR_WaitCondVar (cvar=0x7fdc5bd1a300, timeout=4294967295)
    at ../../../../../src/nsprpub/pr/src/pthreads/ptsynch.c:417
#2  0x00007fdc6fcc9ee7 in PR_Wait (mon=0x7fdc5bd62d50, timeout=4294967295)
    at ../../../../../src/nsprpub/pr/src/pthreads/ptsynch.c:601
#3  0x00007fdc71ba29d7 in mozilla::Monitor::Wait (this=0x7fdc5dc9bd40, interval=4294967295)
    at BlockingResourceBase.cpp:346
#4  0x00007fdc71a82b0c in mozilla::MonitorAutoEnter::Wait (this=0x7fff7aa9b170, interval=4294967295)
    at ../../dist/include/mozilla/Monitor.h:226
#5  0x00007fdc71a80e77 in mozilla::ipc::GeckoChildProcessHost::SyncLaunch (this=0x7fdc5dc9bc80, aExtraOpts=
          {<std::_Vector_base<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >> = {_M_impl = {<std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >> = {<__gnu_cxx::new_allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >> = {<No data fields>}, <No data fields>}, _M_start = 0x7fff7aa9b200, _M_finish = 0x7fdc5dc9bc80, _M_end_of_storage = 0x7fdc5dc9bd40}}, <No data fields>})
    at ../../../src/ipc/glue/GeckoChildProcessHost.cpp:107
#6  0x00007fdc71a73b5e in mozilla::plugins::PluginProcessParent::Launch (this=0x7fdc5dc9bc80)
    at ../../../src/dom/plugins/PluginProcessParent.cpp:75
#7  0x00007fdc71a7330c in mozilla::plugins::PluginModuleParent::LoadModule (
    aFilePath=0x7fdc5cd15688 "/builds/electrolysis/ff-debug/modules/plugin/test/testplugin/libnptest.so")
    at ../../../src/dom/plugins/PluginModuleParent.cpp:60
Attachment #417956 - Attachment is obsolete: true
benedict fixed this.
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.