Closed Bug 597951 Opened 12 years ago Closed 11 years ago

Startup crash [@ morkCursor::IsOpenMdbObject(nsIMdbEnv*, unsigned char*) ] - [@ nsPrefBranch::freeObserverList] after xpcom initialization failed

Categories

(Core :: XPCOM, defect)

1.9.2 Branch
x86
Windows XP
defect
Not set
critical

Tracking

()

RESOLVED WORKSFORME

People

(Reporter: Usul, Unassigned)

References

Details

(Keywords: crash, Whiteboard: [tbird crash])

Crash Data

This seems to affect our windows users a lot - as it's currently a top crasher the stack looks like :

0  	thunderbird.exe  	morkCursor::IsOpenMdbObject  	 db/mork/src/morkCursor.cpp:163
1 	thunderbird.exe 	nsPrefBranch::freeObserverList 	modules/libpref/src/nsPrefBranch.cpp:781
2 	thunderbird.exe 	nsPrefBranch::Observe 	modules/libpref/src/nsPrefBranch.cpp:722
3 	xpcom_core.dll 	nsObserverList::NotifyObservers 	xpcom/ds/nsObserverList.cpp:130
4 	xpcom_core.dll 	nsObserverService::NotifyObservers 	xpcom/ds/nsObserverService.cpp:182
5 	xpcom_core.dll 	mozilla::ShutdownXPCOM 	xpcom/build/nsXPComInit.cpp:851
6 	thunderbird.exe 	ScopedXPCOMStartup::~ScopedXPCOMStartup 	toolkit/xre/nsAppRunner.cpp:1052
7 	thunderbird.exe 	XRE_main 	toolkit/xre/nsAppRunner.cpp:3274
8 	thunderbird.exe 	NS_internal_main 	mail/app/nsMailApp.cpp:101
9 	thunderbird.exe 	wmain 	toolkit/xre/nsWindowsWMain.cpp:120
10 	thunderbird.exe 	__tmainCRTStartup 	objdir-tb/mozilla/memory/jemalloc/crtsrc/crtexe.c:591
11 	kernel32.dll 	BaseThreadInitThunk 	
12 	ntdll.dll 	__RtlUserThreadStart 	
13 	ntdll.dll 	_RtlUserThreadStart
I think the mork reference for this stack is bogus.

(In reply to comment #0)
bp-2dd944be-c46e-4e98-9e54-e58472100919

> 5     xpcom_core.dll     mozilla::ShutdownXPCOM    
> xpcom/build/nsXPComInit.cpp:851
> 6     thunderbird.exe     ScopedXPCOMStartup::~ScopedXPCOMStartup    
> toolkit/xre/nsAppRunner.cpp:1052
> 7     thunderbird.exe     XRE_main     toolkit/xre/nsAppRunner.cpp:3274

The above part of the stack is pointing to:

http://hg.mozilla.org/releases/mozilla-1.9.2/annotate/c2b6766f960d/toolkit/xre/nsAppRunner.cpp#l3274

ScopedXPCOMStartup xpcom;
rv = xpcom.Initialize();
NS_ENSURE_SUCCESS(rv, 1); <--- line 3274

So therefore XPCOM initialization has failed for some reason. Obviously we shouldn't crash, but apparently something has caused startup to fail, this could be related to problems we've seen previously.

I'm not sure there's much we can do here without STR, but cc'ing some folks anyway.
Severity: major → critical
Component: Backend → XPCOM
Product: MailNews Core → Core
QA Contact: backend → xpcom
Summary: Startup crash [@ morkCursor::IsOpenMdbObject(nsIMdbEnv*, unsigned char*) ] → Startup crash [@ morkCursor::IsOpenMdbObject(nsIMdbEnv*, unsigned char*) ] - after xpcom initialization failed
I had started to look at this on Saturday.
might this be related to timeless' bug 394753 comment 3?
Summary: Startup crash [@ morkCursor::IsOpenMdbObject(nsIMdbEnv*, unsigned char*) ] - after xpcom initialization failed → Startup crash [@ morkCursor::IsOpenMdbObject(nsIMdbEnv*, unsigned char*) ] - [@ nsPrefBranch::freeObserverList] after xpcom initialization failed
as noted in Bug 519962 comment 41...
morkCursor::IsOpenMdbObject is now totally gone from v3.1.5 crashes.
And (no shock) nsPrefBranch::Observe(.... has returned as a topcrash, top 10.
Depends on: 519962
Whiteboard: [tbird crash]
Crash Signature: [@ morkCursor::IsOpenMdbObject(nsIMdbEnv*, unsigned char*) ] [@ nsPrefBranch::freeObserverList]
no crashes on crash-stats after v3.1.4
Status: NEW → RESOLVED
Crash Signature: [@ morkCursor::IsOpenMdbObject(nsIMdbEnv*, unsigned char*) ] [@ nsPrefBranch::freeObserverList] → [@ morkCursor::IsOpenMdbObject(nsIMdbEnv*, unsigned char*) ] [@ nsPrefBranch::freeObserverList]
Closed: 11 years ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.