Assertion and crash: IsCanceled() (Subclass Cancel() didn't set IsCanceled()!), at /Volumes/data/code/firefox/nightly/dom/workers/WorkerRunnable.cpp:278

VERIFIED FIXED in Firefox 30

Status

()

defect
--
critical
VERIFIED FIXED
5 years ago
5 years ago

People

(Reporter: whimboo, Assigned: bent.mozilla)

Tracking

({assertion, crash, regression})

Trunk
mozilla32
All
macOS
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(firefox29 wontfix, firefox30+ fixed, firefox31+ fixed, firefox32+ verified, b2g-v1.4 fixed, b2g-v2.0 fixed)

Details

(Whiteboard: [qa-automation-blocked])

Attachments

(1 attachment)

I can see this assertion and the follow-up crash in a recent debug build of Firefox from mozilla-central by doing the steps as found on bug 994658.

Steps:
1. Download and unzip the mozmill-environment from https://mozqa.com/mozmill-env/latest-mac.zip
2. Clone the mozmill-tests repository: http://hg.mozilla.org/qa/mozmill-tests
3. Download attachment 8415125 [details] and overwrite mozmill-tests/firefox/tests/functional/restartTests/testAddons_installTheme/test1.js
4. Run Mozmill:  for i in {1..10}; do mozmill -m mozmill-tests/firefox/tests/functional/restartTests/testAddons_installTheme/manifest.ini -b /Applications/FirefoxNightlyDebug.app/ --profile ./profile; done

Assertion details:

Assertion failure: IsCanceled() (Subclass Cancel() didn't set IsCanceled()!), at /Volumes/data/code/firefox/nightly/dom/workers/WorkerRunnable.cpp:278
TEST-UNEXPECTED-FAIL | Application unexpectedly closed (exit code: -11)

Crashed Thread:  33  DOM Worker

Exception Type:  EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_INVALID_ADDRESS at 0x0000000000000000


Thread 33 Crashed:: DOM Worker
0   XUL                           	0x00000001029c609f mozilla::dom::workers::WorkerRunnable::Run() + 1055 (WorkerRunnable.cpp:247)
1   XUL                           	0x000000010158520d nsThread::ProcessNextEvent(bool, bool*) + 1309 (nsThread.cpp:715)
2   XUL                           	0x00000001014f493d NS_ProcessPendingEvents(nsIThread*, unsigned int) + 77 (nsThreadUtils.cpp:210)
3   XUL                           	0x00000001029afe0d mozilla::dom::workers::WorkerPrivate::ClearMainEventQueue(mozilla::dom::workers::WorkerPrivate::WorkerRanOrNot) + 77 (WorkerPrivate.cpp:4521)
4   XUL                           	0x00000001029aea7b mozilla::dom::workers::WorkerPrivate::NotifyInternal(JSContext*, mozilla::dom::workers::Status) + 443 (WorkerPrivate.cpp:5068)
5   XUL                           	0x00000001029b8fb1 (anonymous namespace)::NotifyRunnable::WorkerRun(JSContext*, mozilla::dom::workers::WorkerPrivate*) + 17 (WorkerPrivate.cpp:1099)
6   XUL                           	0x00000001029c5e50 mozilla::dom::workers::WorkerRunnable::Run() + 464 (WorkerRunnable.cpp:312)
7   XUL                           	0x00000001029ae7ed mozilla::dom::workers::WorkerPrivate::ProcessAllControlRunnablesLocked() + 349 (WorkerPrivate.cpp:4491)
8   XUL                           	0x00000001029b1ef8 mozilla::dom::workers::WorkerPrivate::RunCurrentSyncLoop() + 472 (WorkerPrivate.cpp:4813)
9   XUL                           	0x00000001029ca7a0 (anonymous namespace)::WorkerThreadProxySyncRunnable::Dispatch(JSContext*) + 176 (WorkerPrivate.h:1221)
10  XUL                           	0x00000001029cb279 mozilla::dom::workers::XMLHttpRequest::SendInternal(nsAString_internal const&, JSAutoStructuredCloneBuffer&&, nsTArray<nsCOMPtr<nsISupports> >&, mozilla::ErrorResult&) + 681 (XMLHttpRequest.cpp:1798)
11  XUL                           	0x00000001029cbfc4 mozilla::dom::workers::XMLHttpRequest::Send(mozilla::ErrorResult&) + 164 (nsTArray.h:368)
12  XUL                           	0x000000010245f8bd mozilla::dom::XMLHttpRequestBinding_workers::send(JSContext*, JS::Handle<JSObject*>, mozilla::dom::workers::XMLHttpRequest*, JSJitMethodCallArgs const&) + 349 (ErrorResult.h:112)
13  XUL                           	0x000000010246dcde mozilla::dom::GenericBindingMethod(JSContext*, unsigned int, JS::Value*) + 270 (BindingUtils.cpp:2300)
14  XUL                           	0x0000000104308642 js::CallJSNative(JSContext*, bool (*)(JSContext*, unsigned int, JS::Value*), JS::CallArgs const&) + 178 (jscntxtinlines.h:239)
15  XUL                           	0x00000001042ece39 js::Invoke(JSContext*, JS::CallArgs, js::MaybeConstruct) + 601 (Interpreter.cpp:468)
16  XUL                           	0x00000001042e66f0 Interpret(JSContext*, js::RunState&) + 38320 (Interpreter.cpp:2620)
17  XUL                           	0x00000001042dd126 js::RunScript(JSContext*, js::RunState&) + 390 (Interpreter.cpp:422)
18  XUL                           	0x00000001042ece49 js::Invoke(JSContext*, JS::CallArgs, js::MaybeConstruct) + 617 (Interpreter.cpp:494)
19  XUL                           	0x00000001041a6b5b js_fun_call(JSContext*, unsigned int, JS::Value*) + 411 (jsfun.cpp:949)
20  XUL                           	0x0000000104308642 js::CallJSNative(JSContext*, bool (*)(JSContext*, unsigned int, JS::Value*), JS::CallArgs const&) + 178 (jscntxtinlines.h:239)
21  XUL                           	0x00000001042ece39 js::Invoke(JSContext*, JS::CallArgs, js::MaybeConstruct) + 601 (Interpreter.cpp:468)
22  XUL                           	0x00000001042e66f0 Interpret(JSContext*, js::RunState&) + 38320 (Interpreter.cpp:2620)
23  XUL                           	0x00000001042dd126 js::RunScript(JSContext*, js::RunState&) + 390 (Interpreter.cpp:422)
24  XUL                           	0x00000001042ee1f4 js::ExecuteKernel(JSContext*, JS::Handle<JSScript*>, JSObject&, JS::Value const&, js::ExecuteType, js::AbstractFramePtr, JS::Value*) + 468 (Interpreter.cpp:630)
25  XUL                           	0x00000001042ee48b js::Execute(JSContext*, JS::Handle<JSScript*>, JSObject&, JS::Value*) + 331 (Interpreter.cpp:666)
26  XUL                           	0x000000010414a740 Evaluate(JSContext*, JS::Handle<JSObject*>, JS::ReadOnlyCompileOptions const&, JS::SourceBufferHolder&, JS::Value*) + 496 (jsapi.cpp:4849)
27  XUL                           	0x000000010414ab4c JS::Evaluate(JSContext*, JS::Handle<JSObject*>, JS::ReadOnlyCompileOptions const&, JS::SourceBufferHolder&) + 12 (jsapi.cpp:4940)
28  XUL                           	0x00000001029a5087 (anonymous namespace)::ScriptExecutorRunnable::WorkerRun(JSContext*, mozilla::dom::workers::WorkerPrivate*) + 871 (ScriptLoader.cpp:751)
29  XUL                           	0x00000001029c5e50 mozilla::dom::workers::WorkerRunnable::Run() + 464 (WorkerRunnable.cpp:312)
30  XUL                           	0x000000010158520d nsThread::ProcessNextEvent(bool, bool*) + 1309 (nsThread.cpp:715)
31  XUL                           	0x00000001014f4a33 NS_ProcessNextEvent(nsIThread*, bool) + 51 (nsThreadUtils.cpp:263)
32  XUL                           	0x00000001029b1f2d mozilla::dom::workers::WorkerPrivate::RunCurrentSyncLoop() + 525 (WorkerPrivate.cpp:4823)
33  XUL                           	0x00000001029a2721 (anonymous namespace)::LoadAllScripts(JSContext*, mozilla::dom::workers::WorkerPrivate*, nsTArray<(anonymous namespace)::ScriptLoadInfo>&, bool) + 513 (WorkerPrivate.h:1221)
34  XUL                           	0x00000001029a2a35 mozilla::dom::workers::scriptloader::Load(JSContext*, mozilla::dom::workers::WorkerPrivate*, mozilla::dom::Sequence<nsString> const&, mozilla::ErrorResult&) + 469 (ScriptLoader.cpp:946)
35  XUL                           	0x00000001023f4cd0 mozilla::dom::WorkerGlobalScopeBinding_workers::importScripts(JSContext*, JS::Handle<JSObject*>, mozilla::dom::workers::WorkerGlobalScope*, JSJitMethodCallArgs const&) + 352 (ErrorResult.h:112)
36  XUL                           	0x00000001023f2f22 mozilla::dom::WorkerGlobalScopeBinding_workers::genericMethod(JSContext*, unsigned int, JS::Value*) + 354 (.WorkerGlobalScopeBinding.cpp:906)
37  XUL                           	0x0000000104308642 js::CallJSNative(JSContext*, bool (*)(JSContext*, unsigned int, JS::Value*), JS::CallArgs const&) + 178 (jscntxtinlines.h:239)
38  XUL                           	0x00000001042ece39 js::Invoke(JSContext*, JS::CallArgs, js::MaybeConstruct) + 601 (Interpreter.cpp:468)
39  XUL                           	0x00000001042e66f0 Interpret(JSContext*, js::RunState&) + 38320 (Interpreter.cpp:2620)
40  XUL                           	0x00000001042dd126 js::RunScript(JSContext*, js::RunState&) + 390 (Interpreter.cpp:422)
41  XUL                           	0x00000001042ee1f4 js::ExecuteKernel(JSContext*, JS::Handle<JSScript*>, JSObject&, JS::Value const&, js::ExecuteType, js::AbstractFramePtr, JS::Value*) + 468 (Interpreter.cpp:630)
42  XUL                           	0x00000001042ee48b js::Execute(JSContext*, JS::Handle<JSScript*>, JSObject&, JS::Value*) + 331 (Interpreter.cpp:666)
43  XUL                           	0x000000010414a740 Evaluate(JSContext*, JS::Handle<JSObject*>, JS::ReadOnlyCompileOptions const&, JS::SourceBufferHolder&, JS::Value*) + 496 (jsapi.cpp:4849)
44  XUL                           	0x000000010414ab4c JS::Evaluate(JSContext*, JS::Handle<JSObject*>, JS::ReadOnlyCompileOptions const&, JS::SourceBufferHolder&) + 12 (jsapi.cpp:4940)
45  XUL                           	0x00000001029a5087 (anonymous namespace)::ScriptExecutorRunnable::WorkerRun(JSContext*, mozilla::dom::workers::WorkerPrivate*) + 871 (ScriptLoader.cpp:751)
46  XUL                           	0x00000001029c5e50 mozilla::dom::workers::WorkerRunnable::Run() + 464 (WorkerRunnable.cpp:312)
47  XUL                           	0x000000010158520d nsThread::ProcessNextEvent(bool, bool*) + 1309 (nsThread.cpp:715)
48  XUL                           	0x00000001014f4a33 NS_ProcessNextEvent(nsIThread*, bool) + 51 (nsThreadUtils.cpp:263)
49  XUL                           	0x00000001029b1f2d mozilla::dom::workers::WorkerPrivate::RunCurrentSyncLoop() + 525 (WorkerPrivate.cpp:4823)
50  XUL                           	0x00000001029a2721 (anonymous namespace)::LoadAllScripts(JSContext*, mozilla::dom::workers::WorkerPrivate*, nsTArray<(anonymous namespace)::ScriptLoadInfo>&, bool) + 513 (WorkerPrivate.h:1221)
51  XUL                           	0x00000001029a2a35 mozilla::dom::workers::scriptloader::Load(JSContext*, mozilla::dom::workers::WorkerPrivate*, mozilla::dom::Sequence<nsString> const&, mozilla::ErrorResult&) + 469 (ScriptLoader.cpp:946)
52  XUL                           	0x00000001023f4cd0 mozilla::dom::WorkerGlobalScopeBinding_workers::importScripts(JSContext*, JS::Handle<JSObject*>, mozilla::dom::workers::WorkerGlobalScope*, JSJitMethodCallArgs const&) + 352 (ErrorResult.h:112)
53  XUL                           	0x00000001023f2f22 mozilla::dom::WorkerGlobalScopeBinding_workers::genericMethod(JSContext*, unsigned int, JS::Value*) + 354 (.WorkerGlobalScopeBinding.cpp:906)
54  XUL                           	0x0000000104308642 js::CallJSNative(JSContext*, bool (*)(JSContext*, unsigned int, JS::Value*), JS::CallArgs const&) + 178 (jscntxtinlines.h:239)
55  XUL                           	0x00000001042ece39 js::Invoke(JSContext*, JS::CallArgs, js::MaybeConstruct) + 601 (Interpreter.cpp:468)
56  XUL                           	0x00000001042e66f0 Interpret(JSContext*, js::RunState&) + 38320 (Interpreter.cpp:2620)
57  XUL                           	0x00000001042dd126 js::RunScript(JSContext*, js::RunState&) + 390 (Interpreter.cpp:422)
58  XUL                           	0x00000001042ee1f4 js::ExecuteKernel(JSContext*, JS::Handle<JSScript*>, JSObject&, JS::Value const&, js::ExecuteType, js::AbstractFramePtr, JS::Value*) + 468 (Interpreter.cpp:630)
59  XUL                           	0x00000001042ee48b js::Execute(JSContext*, JS::Handle<JSScript*>, JSObject&, JS::Value*) + 331 (Interpreter.cpp:666)
60  XUL                           	0x000000010414a740 Evaluate(JSContext*, JS::Handle<JSObject*>, JS::ReadOnlyCompileOptions const&, JS::SourceBufferHolder&, JS::Value*) + 496 (jsapi.cpp:4849)
61  XUL                           	0x000000010414ab4c JS::Evaluate(JSContext*, JS::Handle<JSObject*>, JS::ReadOnlyCompileOptions const&, JS::SourceBufferHolder&) + 12 (jsapi.cpp:4940)
62  XUL                           	0x00000001029a5087 (anonymous namespace)::ScriptExecutorRunnable::WorkerRun(JSContext*, mozilla::dom::workers::WorkerPrivate*) + 871 (ScriptLoader.cpp:751)
63  XUL                           	0x00000001029c5e50 mozilla::dom::workers::WorkerRunnable::Run() + 464 (WorkerRunnable.cpp:312)
64  XUL                           	0x000000010158520d nsThread::ProcessNextEvent(bool, bool*) + 1309 (nsThread.cpp:715)
65  XUL                           	0x00000001014f4a33 NS_ProcessNextEvent(nsIThread*, bool) + 51 (nsThreadUtils.cpp:263)
66  XUL                           	0x00000001029b1f2d mozilla::dom::workers::WorkerPrivate::RunCurrentSyncLoop() + 525 (WorkerPrivate.cpp:4823)
67  XUL                           	0x00000001029a2721 (anonymous namespace)::LoadAllScripts(JSContext*, mozilla::dom::workers::WorkerPrivate*, nsTArray<(anonymous namespace)::ScriptLoadInfo>&, bool) + 513 (WorkerPrivate.h:1221)
68  XUL                           	0x00000001029a2479 mozilla::dom::workers::scriptloader::LoadWorkerScript(JSContext*) + 265 (ScriptLoader.cpp:921)
69  XUL                           	0x00000001029ba9c6 (anonymous namespace)::CompileScriptRunnable::WorkerRun(JSContext*, mozilla::dom::workers::WorkerPrivate*) + 102 (WorkerPrivate.cpp:882)
70  XUL                           	0x00000001029c5e50 mozilla::dom::workers::WorkerRunnable::Run() + 464 (WorkerRunnable.cpp:312)
71  XUL                           	0x000000010158520d nsThread::ProcessNextEvent(bool, bool*) + 1309 (nsThread.cpp:715)
72  XUL                           	0x00000001014f4a33 NS_ProcessNextEvent(nsIThread*, bool) + 51 (nsThreadUtils.cpp:263)
73  XUL                           	0x00000001029ade12 mozilla::dom::workers::WorkerPrivate::DoRunLoop(JSContext*) + 610 (WorkerPrivate.cpp:4056)
74  XUL                           	0x000000010299f2ab (anonymous namespace)::WorkerThreadPrimaryRunnable::Run() + 1707 (RuntimeService.cpp:2560)
75  XUL                           	0x000000010158520d nsThread::ProcessNextEvent(bool, bool*) + 1309 (nsThread.cpp:715)
76  XUL                           	0x00000001014f4a33 NS_ProcessNextEvent(nsIThread*, bool) + 51 (nsThreadUtils.cpp:263)
77  XUL                           	0x00000001018ad30a mozilla::ipc::MessagePumpForNonMainThreads::Run(base::MessagePump::Delegate*) + 442 (MessagePump.cpp:307)
78  XUL                           	0x0000000101887243 MessageLoop::Run() + 131 (message_loop.cc:504)
79  XUL                           	0x00000001015837ec nsThread::ThreadFunc(void*) + 508 (nsThread.cpp:325)
80  libnss3.dylib                 	0x000000010121a680 _pt_root + 288
81  libsystem_pthread.dylib       	0x00007fff92139899 _pthread_body + 138
82  libsystem_pthread.dylib       	0x00007fff9213972a _pthread_start + 137
83  libsystem_pthread.dylib       	0x00007fff9213dfc9 thread_start + 13

We will have to work on finding the regression range here.
By using a debug build from the FTP server, here from March 27th, I get a slightly different stack:

###!!! ASSERTION: Didn't know about this one!: 'mFeatures.Contains(aFeature)', file /builds/slave/m-cen-osx64-d-0000000000000000/build/dom/workers/WorkerPrivate.cpp, line 4661
JSPrincipals::dump()+0x00316F40 [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x014A9560]
JSPrincipals::dump()+0x003385F2 [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x014CAC12]
XRE_AddJarManifestLocation+0x0000B68D [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x000AC0ED]
UNKNOWN [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x0001CC9D]
JSPrincipals::dump()+0x00321FBD [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x014B45DD]
JSPrincipals::dump()+0x00320C2B [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x014B324B]
[62819] WARNING: nsAppShell::Exit() called redundantly: file /builds/slave/m-cen-osx64-d-0000000000000000/build/widget/cocoa/nsAppShell.mm, line 758
JSPrincipals::dump()+0x0032B501 [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x014BDB21]
JSPrincipals::dump()+0x00338500 [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x014CAB20]
JSPrincipals::dump()+0x0032099D [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x014B2FBD]
JSPrincipals::dump()+0x0032193F [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x014B3F5F]
JSPrincipals::dump()+0x003121A8 [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x014A47C8]
js_ReportOverRecursed(JSContext*)+0x00001684 [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x02C807E4]
js::DeadObjectProxy::~DeadObjectProxy()+0x0001C341 [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x02E23F41]
js::DeadObjectProxy::~DeadObjectProxy()+0x0001AA16 [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x02E22616]
js::DeadObjectProxy::~DeadObjectProxy()+0x00029B59 [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x02E31759]
js_ReportIsNotFunction(JSContext*, JS::Handle<JS::Value>)+0x0000246C [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x02C963EC]
js::ProfilingGetPC(JSRuntime*, JSScript*, void*)+0x00015431 [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x02E5FA01]
js::DeadObjectProxy::~DeadObjectProxy()+0x00029B49 [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x02E31749]
js::DeadObjectProxy::~DeadObjectProxy()+0x00023A97 [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x02E2B697]
js::DeadObjectProxy::~DeadObjectProxy()+0x0001AA16 [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x02E22616]
js::DeadObjectProxy::~DeadObjectProxy()+0x0002AED7 [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x02E32AD7]
js::DeadObjectProxy::~DeadObjectProxy()+0x0002B10B [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x02E32D0B]
JS::CompileOptions::wrap(JSContext*, JSCompartment*)+0x00002E6F [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x02C76E9F]
JSPrincipals::dump()+0x0031724E [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x014A986E]
JSPrincipals::dump()+0x00338500 [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x014CAB20]
XRE_AddJarManifestLocation+0x0000B68D [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x000AC0ED]
UNKNOWN [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x0001CD93]
JSPrincipals::dump()+0x0032419D [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x014B67BD]
JSPrincipals::dump()+0x003148CA [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x014A6EEA]
JSPrincipals::dump()+0x00314BE5 [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x014A7205]
JS::CustomAutoRooter::~CustomAutoRooter()+0x0022F6C0 [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x00F70210]
JS::CustomAutoRooter::~CustomAutoRooter()+0x0022D9C0 [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x00F6E510]
js::ProfilingGetPC(JSRuntime*, JSScript*, void*)+0x00015431 [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x02E5FA01]
js::DeadObjectProxy::~DeadObjectProxy()+0x00029B49 [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x02E31749]
js::DeadObjectProxy::~DeadObjectProxy()+0x00023A97 [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x02E2B697]
js::DeadObjectProxy::~DeadObjectProxy()+0x0001AA16 [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x02E22616]
js::DeadObjectProxy::~DeadObjectProxy()+0x0002AED7 [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x02E32AD7]
js::DeadObjectProxy::~DeadObjectProxy()+0x0002B10B [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x02E32D0B]
JS::CompileOptions::wrap(JSContext*, JSCompartment*)+0x00002E6F [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x02C76E9F]
JSPrincipals::dump()+0x0031724E [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x014A986E]
JSPrincipals::dump()+0x00338500 [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x014CAB20]
XRE_AddJarManifestLocation+0x0000B68D [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x000AC0ED]
UNKNOWN [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x0001CD93]
JSPrincipals::dump()+0x0032419D [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x014B67BD]
JSPrincipals::dump()+0x003148CA [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x014A6EEA]
JSPrincipals::dump()+0x00314BE5 [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x014A7205]
JS::CustomAutoRooter::~CustomAutoRooter()+0x0022F6C0 [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x00F70210]
JS::CustomAutoRooter::~CustomAutoRooter()+0x0022D9C0 [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x00F6E510]
js::ProfilingGetPC(JSRuntime*, JSScript*, void*)+0x00015431 [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x02E5FA01]
js::DeadObjectProxy::~DeadObjectProxy()+0x00029B49 [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x02E31749]
js::DeadObjectProxy::~DeadObjectProxy()+0x00023A97 [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x02E2B697]
js::DeadObjectProxy::~DeadObjectProxy()+0x0001AA16 [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x02E22616]
js::DeadObjectProxy::~DeadObjectProxy()+0x0002AED7 [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x02E32AD7]
js::DeadObjectProxy::~DeadObjectProxy()+0x0002B10B [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x02E32D0B]
JS::CompileOptions::wrap(JSContext*, JSCompartment*)+0x00002E6F [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x02C76E9F]
JSPrincipals::dump()+0x0031724E [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x014A986E]
JSPrincipals::dump()+0x00338500 [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x014CAB20]
XRE_AddJarManifestLocation+0x0000B68D [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x000AC0ED]
UNKNOWN [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x0001CD93]
JSPrincipals::dump()+0x0032419D [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x014B67BD]
JSPrincipals::dump()+0x003148CA [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x014A6EEA]
JSPrincipals::dump()+0x0031462D [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x014A6C4D]
JSPrincipals::dump()+0x0032CF86 [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x014BF5A6]
JSPrincipals::dump()+0x00338500 [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x014CAB20]
XRE_AddJarManifestLocation+0x0000B68D [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x000AC0ED]
UNKNOWN [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x0001CD93]
JSPrincipals::dump()+0x00320022 [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x014B2642]
JSPrincipals::dump()+0x00311492 [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x014A3AB2]
XRE_AddJarManifestLocation+0x0000B68D [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x000AC0ED]
UNKNOWN [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x0001CD93]
JS::CompileOptions::introductionScript() const+0x00294156 [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x003C94C6]
JS::CompileOptions::introductionScript() const+0x0026E143 [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x003A34B3]
XRE_AddJarManifestLocation+0x00009C94 [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/XUL +0x000AA6F4]
PR_GetThreadName+0x00000270 [/Volumes/Nightly/FirefoxNightlyDebug.app/Contents/MacOS/libnss3.dylib +0x002279B0]
_pthread_body+0x0000008A [/usr/lib/system/libsystem_pthread.dylib +0x00001899]
_pthread_struct_init+0x00000000 [/usr/lib/system/libsystem_pthread.dylib +0x0000172A]
Assertion failure: !loopInfo->mCompleted, at /builds/slave/m-cen-osx64-d-0000000000000000/build/dom/workers/WorkerPrivate.cpp:4883
Posted patch Patch, v1Splinter Review
Looks like I forgot to have StopSyncLoopRunnable call the base class Cancel method...
Assignee: nobody → bent.mozilla
Status: NEW → ASSIGNED
Attachment #8415533 - Flags: review?(mrbkap)
Attachment #8415533 - Flags: review?(mrbkap) → review+
So looks like a regression started in Firefox 29 then. Updating dependencies and flags.
NS_WARN_IF() is meant to be used inside of an "if" condition; see existing usages here:
 http://mxr.mozilla.org/mozilla-central/search?string=NS_WARN_IF(

If you're not using it inside of an "if", you want NS_WARN_IF_FALSE. e.g.:
 NS_WARN_IF_FALSE(NS_SUCCEEDED(rv), "Run() failed");
or something like that.
https://hg.mozilla.org/mozilla-central/rev/c56db0ba5b49
Status: ASSIGNED → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla32
We don't see any of those assertions and crashes anymore with recent debug builds of Firefox Nightly.
Status: RESOLVED → VERIFIED
Can we get uplift nominations?
Flags: needinfo?(bent.mozilla)
Comment on attachment 8415533 [details] [diff] [review]
Patch, v1

[Approval Request Comment]
Bug caused by (feature/regressing bug #): 914762
User impact if declined: Debug-only crash
Testing completed (on m-c, etc.): m-c
Risk to taking this patch (and alternatives if risky): None
String or IDL/UUID changes made by this patch: None
Attachment #8415533 - Flags: approval-mozilla-beta?
Attachment #8415533 - Flags: approval-mozilla-aurora?
Flags: needinfo?(bent.mozilla)
Attachment #8415533 - Flags: approval-mozilla-beta?
Attachment #8415533 - Flags: approval-mozilla-beta+
Attachment #8415533 - Flags: approval-mozilla-aurora?
Attachment #8415533 - Flags: approval-mozilla-aurora+
You need to log in before you can comment on or make changes to this bug.