Closed
Bug 678984
Opened 13 years ago
Closed 13 years ago
Assertion failure: rt->onOwnerThread() running test_imapPasswordFailure.js
Categories
(MailNews Core :: Networking: IMAP, defect)
MailNews Core
Networking: IMAP
Tracking
(Not tracked)
RESOLVED
FIXED
Thunderbird 8.0
People
(Reporter: standard8, Assigned: Bienvenu)
References
Details
Attachments
(1 file)
2.99 KB,
patch
|
standard8
:
review+
|
Details | Diff | Splinter Review |
Following bug 650411, test_imapPasswordFailing.js is failing with:
Assertion failure: rt->onOwnerThread(), at /buildbot/linux-comm-central-build/build/mozilla/js/src/jsapi.cpp:6199
<<<<<<<
PROCESS-CRASH | /buildbot/comm-central-linux-opt-unittest-xpcshell/build/xpcshell/tests/mailnews/imap/test/unit/test_imapPasswordFailure.js | application crashed (minidump found)
Crash dump filename: /buildbot/comm-central-linux-opt-unittest-xpcshell/build/xpcshell/tests/mailnews/imap/test/unit/135fa0c0-eae0-1078-1dd03bd2-532c4d37.dmp
Operating system: Linux
0.0.0 Linux 2.6.31.5-127.fc12.i686.PAE #1 SMP Sat Nov 7 21:25:57 EST 2009 i686
CPU: x86
GenuineIntel family 6 model 44 stepping 2
1 CPU
Crash reason: SIGABRT
Crash address: 0x5198
Thread 9 (crashed)
0 linux-gate.so + 0x424
eip = 0x007ae424 esp = 0xb15f4a60 ebp = 0xb15f4a78 ebx = 0x00005198
esi = 0xb6c00548 edi = 0x0054aff4 eax = 0x00000000 ecx = 0x000051a1
edx = 0x00000006 efl = 0x00000202
Found by: given as instruction pointer in context
1 libxul.so!CrashInJS [jsutil.cpp:e32b302039ca : 95 + 0xb]
eip = 0x01e93cab esp = 0xb15f4a80 ebp = 0x00000000
Found by: previous frame's frame pointer
2 libxul.so!JS_AbortIfWrongThread [jsapi.cpp:e32b302039ca : 6199 + 0x1f]
eip = 0x01d5daef esp = 0xb15f4aa0 ebp = 0x00000000 ebx = 0x0234403c
Found by: call frame info
3 libxul.so!js_NewContext [jscntxt.cpp:e32b302039ca : 319 + 0x7]
eip = 0x01d7c990 esp = 0xb15f4ac0 ebp = 0x00000000 ebx = 0x0234403c
Found by: call frame info
4 libxul.so!XPCJSContextStack::GetSafeJSContext [xpcthreadcontext.cpp:e32b302039ca : 252 + 0xc]
eip = 0x015f6d0e esp = 0xb15f4b00 ebp = 0xb6c0f0d8 ebx = 0x0234403c
esi = 0xb6c00548 edi = 0x09b7ca18
Found by: call frame info
5 libxul.so!XPCCallContext::Init [xpccallcontext.cpp:e32b302039ca : 132 + 0xb]
eip = 0x015dd6a2 esp = 0xb15f4b60 ebp = 0x00000000 ebx = 0x0234403c
esi = 0xb15f4c10 edi = 0xb6c00548
Found by: call frame info
6 libxul.so!XPCCallContext::XPCCallContext [xpccallcontext.cpp:e32b302039ca : 63 + 0x2b]
eip = 0x015dd960 esp = 0xb15f4ba0 ebp = 0xb15f4c10 ebx = 0x0234403c
esi = 0xb15f4c10 edi = 0x00000002
Found by: call frame info
7 libxul.so!GetContextFromObject [xpcwrappedjsclass.cpp:e32b302039ca : 566 + 0x19]
eip = 0x015fa254 esp = 0xb15f4be0 ebp = 0xb15f4c10 ebx = 0x0234403c
esi = 0x00000000 edi = 0xb2c513a0
Found by: call frame info
8 libxul.so!nsXPCWrappedJSClass::DelegatedQueryInterface [xpcwrappedjsclass.cpp:e32b302039ca : 689 + 0x7]
eip = 0x015fb63a esp = 0xb15f4cc0 ebp = 0x021e1a70 ebx = 0x0234403c
esi = 0x09dcaf60 edi = 0xb15f4e4c
Found by: call frame info
9 libxul.so!nsXPCWrappedJS::QueryInterface [xpcwrappedjs.cpp:e32b302039ca : 161 + 0xb]
eip = 0x015f7ef8 esp = 0xb15f4dc0 ebp = 0x021e1a70 ebx = 0x0234403c
esi = 0x09dcaf60 edi = 0xb15f4e4c
Found by: call frame info
10 libxul.so!nsWeakReference::QueryReferent [nsWeakReference.cpp:2f4de0b727c8 : 151 + 0x1d]
eip = 0x0193d57f esp = 0xb15f4e00 ebp = 0xb15f4e7c ebx = 0x0234403c
esi = 0xb15f4e70 edi = 0xb15f4e4c
Found by: call frame info
11 libxul.so!nsQueryReferent::operator() [nsWeakReference.cpp:2f4de0b727c8 : 88 + 0x8]
eip = 0x0193d63c esp = 0xb15f4e20 ebp = 0xb15f4e7c ebx = 0x0234403c
esi = 0xb15f4e70 edi = 0xb15f4e4c
Found by: call frame info
12 libxul.so!nsCOMPtr_base::assign_from_helper [nsCOMPtr.cpp:2f4de0b727c8 : 150 + 0x5]
eip = 0x0193ba5b esp = 0xb15f4e40 ebp = 0xb15f4e7c ebx = 0x0234403c
esi = 0x023160d8 edi = 0xb15f4e7c
Found by: call frame info
13 libxul.so!nsMsgMailNewsUrl::GetMsgWindow [nsMsgMailNewsUrl.cpp:2f4de0b727c8 : 217 + 0x10]
eip = 0x01cc0c6a esp = 0xb15f4e60 ebp = 0xb15f4e7c ebx = 0x0234403c
esi = 0x80004003 edi = 0xb15f4fbc
Found by: call frame info
14 libxul.so!nsImapProtocol::GetMsgWindow [nsImapProtocol.cpp:2f4de0b727c8 : 8159 + 0xe]
eip = 0x01c14d94 esp = 0xb15f4ea0 ebp = 0x00000000 ebx = 0x0234403c
esi = 0x00000000 edi = 0x00000000
Found by: call frame info
15 libxul.so!nsImapProtocol::TryToLogon [nsImapProtocol.cpp:2f4de0b727c8 : 8397 + 0x18]
eip = 0x01c1cd4c esp = 0xb15f4ed0 ebp = 0x00000000 ebx = 0x0234403c
esi = 0x09b8b4d0 edi = 0x00000000
Found by: call frame info
It looks like the issue is that nsMsgMailNewsUrl is threadsafe, but is calling do_QueryReferent on its weak member which calls into js and hence is non-threadsafe.
Reporter | ||
Updated•13 years ago
|
Severity: normal → blocker
Reporter | ||
Updated•13 years ago
|
tracking-thunderbird8:
--- → +
Assignee | ||
Comment 1•13 years ago
|
||
proxy the getting of the msg window to the UI thread. This is temporary since this will all go away when xpcom proxies go away...
Attachment #553188 -
Flags: review?(mbanner)
Reporter | ||
Comment 2•13 years ago
|
||
Comment on attachment 553188 [details] [diff] [review]
proposed fix
Please bump the uuid on nsIImapProtocolSink, r=Standard8 with that fixed.
Attachment #553188 -
Flags: review?(mbanner) → review+
Assignee | ||
Comment 3•13 years ago
|
||
http://hg.mozilla.org/comm-central/rev/66d6cc55d0e3
the sink idls are not used by extensions, so bumping the uuid is not useful, but I've done so.
Status: NEW → RESOLVED
Closed: 13 years ago
Resolution: --- → FIXED
Reporter | ||
Updated•13 years ago
|
Target Milestone: --- → Thunderbird 8.0
Reporter | ||
Updated•13 years ago
|
tracking-thunderbird8:
+ → ---
You need to log in
before you can comment on or make changes to this bug.
Description
•