Closed Bug 551875 Opened 15 years ago Closed 15 years ago

plugin process ABORT: not canceled before returning to main event loop!: '1 < g_main_depth()'

Categories

(Core Graveyard :: Plug-ins, defect)

x86
Linux
defect
Not set
normal

Tracking

(status1.9.2 .4-fixed)

RESOLVED FIXED
mozilla1.9.3a4
Tracking Status
status1.9.2 --- .4-fixed

People

(Reporter: karlt, Assigned: karlt)

References

Details

(Whiteboard: [fixed-lorentz])

Attachments

(1 file)

1. Install Flash Player 10.1 beta 3 2. View attachment 425185 [details] (in a build with attachment 431803 [details] [diff] [review] applied) #1 0xb77b7600 in NS_DebugBreak_P (aSeverity=3, aStr=0xb7d9ce98 "not canceled before returning to main event loop!", aExpr=0xb7d9ce84 "1 < g_main_depth()", aFile=0xb7d9c918 "/home/karl/moz/dev/dom/plugins/PluginModuleChild.cpp", aLine=267) at /home/karl/moz/dev/xpcom/base/nsDebugImpl.cpp:324 #2 0xb767f9a4 in mozilla::plugins::PluginModuleChild::DetectNestedEventLoop ( data=0x8e10790) at /home/karl/moz/dev/dom/plugins/PluginModuleChild.cpp:266 #3 0xb568ae46 in g_timeout_dispatch (source=0x8effe40, callback=0x3, user_data=0x8e10790) at /build/buildd/glib2.0-2.18.2/glib/gmain.c:3589 #4 0xb568a718 in IA__g_main_context_dispatch (context=0x8e118d0) at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2144 #5 0xb568ddc3 in g_main_context_iterate (context=0x8e118d0, block=1, dispatch=1, self=0x8e40790) at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2778 #6 0xb568e2e2 in IA__g_main_loop_run (loop=0x8f060e8) at /build/buildd/glib2.0-2.18.2/glib/gmain.c:2986 #7 0xb04c988b in ?? () from /home/karl/.mozilla/plugins/libflashplayer.so #8 0xb04cb405 in ?? () from /home/karl/.mozilla/plugins/libflashplayer.so #9 0xb04cb58f in ?? () from /home/karl/.mozilla/plugins/libflashplayer.so #10 0xb041c90e in ?? () from /home/karl/.mozilla/plugins/libflashplayer.so #11 0xb013c2a6 in ?? () from /home/karl/.mozilla/plugins/libflashplayer.so #12 0xb013d1ea in ?? () from /home/karl/.mozilla/plugins/libflashplayer.so #13 0xb01326e2 in ?? () from /home/karl/.mozilla/plugins/libflashplayer.so #14 0xb0138954 in ?? () from /home/karl/.mozilla/plugins/libflashplayer.so #15 0xb7678801 in mozilla::plugins::PluginInstanceChild::AnswerNPP_HandleEvent (this=0x8e427a8, event=@0xb4dc8e3c, handled=0xb4dc8e1a) at /home/karl/moz/dev/dom/plugins/PluginInstanceChild.cpp:475 #16 0xb76fe5f1 in mozilla::plugins::PPluginInstanceChild::OnCallReceived ( this=0x8e427a8, msg=@0xb4dc9050, reply=@0xb4dc8fcc) at PPluginInstanceChild.cpp:1177 #17 0xb76f7eb8 in mozilla::plugins::PPluginModuleChild::OnCallReceived ( this=0x8e10790, msg=@0xb4dc9050, reply=@0xb4dc8fcc) at PPluginModuleChild.cpp:460 #18 0xb76997a8 in mozilla::ipc::RPCChannel::DispatchIncall (this=0x8e10798, call=@0xb4dc9050) at /home/karl/moz/dev/ipc/glue/RPCChannel.cpp:447 #19 0xb7699c33 in mozilla::ipc::RPCChannel::Incall (this=0x8e10798, call=@0xb4dc9050, stackDepth=0) at /home/karl/moz/dev/ipc/glue/RPCChannel.cpp:432 #20 0xb769a215 in mozilla::ipc::RPCChannel::OnMaybeDequeueOne (this=0x8e10798) at /home/karl/moz/dev/ipc/glue/RPCChannel.cpp:364 #21 0xb769c1ad in DispatchToMethod<mozilla::ipc::RPCChannel, void (mozilla::ipc::RPCChannel::*)()> (obj=0x8e10798, method=0xb769a106 <mozilla::ipc::RPCChannel::OnMaybeDequeueOne()>, arg=@0xb0c279e4) at /home/karl/moz/dev/ipc/chromium/src/base/tuple.h:383 #22 0xb769c1e9 in RunnableMethod<mozilla::ipc::RPCChannel, void (mozilla::ipc::RPCChannel::*)(), Tuple0>::Run (this=0xb0c279c8) at /home/karl/moz/dev/ipc/chromium/src/base/task.h:307 #23 0xb781af60 in MessageLoop::RunTask (this=0xb4dc926c, task=0xb0c279c8) at /home/karl/moz/dev/ipc/chromium/src/base/message_loop.cc:336 #24 0xb781c6d9 in MessageLoop::DeferOrRunPendingTask (this=0xb4dc926c, pending_task=@0xb4dc9130) at /home/karl/moz/dev/ipc/chromium/src/base/message_loop.cc:344 #25 0xb781c97c in MessageLoop::DoWork (this=0xb4dc926c) at /home/karl/moz/dev/ipc/chromium/src/base/message_loop.cc:444 #26 0xb788c3ab in base::MessagePumpForUI::RunWithDispatcher (this=0x8e10f00, delegate=0xb4dc926c, dispatcher=0x0) at /home/karl/moz/dev/ipc/chromium/src/base/message_pump_glib.cc:199 #27 0xb788cc89 in base::MessagePumpForUI::Run (0xb4dc926c) at /home/karl/moz/dev/ipc/chromium/src/base/message_pump_glib.h:59 #28 0xb781b37f in MessageLoop::RunInternal (this=0xb4dc926c) at /home/karl/moz/dev/ipc/chromium/src/base/message_loop.cc:216 #29 0xb781b3a3 in MessageLoop::RunHandler (this=0xb4dc926c) at /home/karl/moz/dev/ipc/chromium/src/base/message_loop.cc:199 #30 0xb781b427 in MessageLoop::Run (this=0xb4dc926c) at /home/karl/moz/dev/ipc/chromium/src/base/message_loop.cc:173 #31 0xb7841209 in base::Thread::ThreadMain (this=0x8e10738) at /home/karl/moz/dev/ipc/chromium/src/base/thread.cc:165 #32 0xb7873bfa in ThreadFunc (closure=0x8e10738) at /home/karl/moz/dev/ipc/chromium/src/base/platform_thread_posix.cc:26 #33 0xb7f4250f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0 #34 0xb5ee7a0e in clone () from /lib/tls/i686/cmov/libc.so.6 It seems that DetectNestedEventLoop assumes that all events are dispatched from glib. However, events are also dispatched directly from MessagePumpForUI::RunWithDispatcher http://hg.mozilla.org/mozilla-central/annotate/6f8f9de6efb7/ipc/chromium/src/base/message_pump_glib.cc#l199
Sigh. We could either just drop this assert, or grab |depth=g_main_depth()| in EnteredCxxStack() and make the assert |depth < g_main_depth()|.
Yes, there problem is only in the assert.
Attachment #432060 - Flags: review?(jones.chris.g)
Attachment #432060 - Flags: review?(jones.chris.g) → review+
Status: NEW → RESOLVED
Closed: 15 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla1.9.3a4
Whiteboard: [fixed-lorentz]
Product: Core → Core Graveyard
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: