On 12/16/2010 04:39 PM, Matej Kurpel wrote:
ChildEBP RetAddr  Args to Child
0015f130 5fa0c52b e06d7363 00000001 00000003
KERNELBASE!RaiseException+0x58 (FPO: [Non-Fpo])
0015f168 5fa14f13 0015f178 5fa7aa24 5fa5c11c
MOZCRT19!_CxxThrowException+0x46 (FPO: [Non-Fpo]) (CONV: stdcall)
[f:\sp\vctools\crt_bld\self_x86\crt\prebuild\eh\throw.cpp @ 161]


So Mozilla builds its own CRT without FPO, cool.


0015f180 003b474b 00000028 0015f290 5f9ad1d9 MOZCRT19!operator new+0x73
(FPO: [1,3,0]) (CONV: cdecl)

The above func must be statically linked from the Mic CRT into the Moz CRT. So it's still FPO. Weird.


[e:\buildbot\win32_build_31\build\objdir-tb\mozilla\memory\jemalloc\crtsrc\new.cpp
@ 61]

Looking at http://mxr.mozilla.org/mozilla-central/source/memory/jemalloc/ I don't see the source or crtsrc\new.cpp. Must be copied in from Microsoft source code a build time.

In any case, 'operator new' is throwing a C++ exception. Ordinarily that would be due to a bad parameter (e.g., -1) or lack of memory.

In this case is it maybe asking for 0x00000028 = 40 bytes?


0015f198 003b47db 09385800 00000000 003d3b55
thunderbird!nsDOMEvent::nsDOMEvent+0x63 (FPO: [Non-Fpo]) (CONV:
thiscall)
[e:\buildbot\win32_build_31\build\mozilla\content\events\src\nsdomevent.cpp
@ 136]

http://mxr.mozilla.org/mozilla-central/source/content/events/src/nsDOMEvent.cpp
Line 132 is in the middle of a comment, so clearly I'm n ot looking at the right source. Below it is a 'new nsEvent'. But 'nsEvent' looks like it would take more than 40 bytes.


0015f1a4 003d3b55 0015f2b4 09385800 00000000
thunderbird!NS_NewDOMEvent+0x1b (FPO: [3,0,0]) (CONV: cdecl)
[e:\buildbot\win32_build_31\build\mozilla\content\events\src\nsdomevent.cpp
@ 1529]
0015f1c4 00346b83 09385800 00000000 0015f290
thunderbird!nsEventDispatcher::CreateEvent+0x4b1 (FPO: [Non-Fpo]) (CONV:
cdecl)
[e:\buildbot\win32_build_31\build\mozilla\content\events\src\nseventdispatcher.cpp
@ 733]
0015f1dc 006481f1 093854a4 0015f290 0015f2b4
thunderbird!nsDocument::CreateEvent+0x3b (FPO: [3,0,4]) (CONV: stdcall)
[e:\buildbot\win32_build_31\build\mozilla\content\base\src\nsdocument.cpp @
6337]

0015f2b8 0064829a 00b1edac 0015f5a0 5f972629 
thunderbird!nsAutoWindowStateHelper::DispatchCustomEvent+0x83 (FPO: [Non-Fpo]) 
(CONV: thiscall) 
[e:\buildbot\win32_build_31\build\mozilla\embedding\components\windowwatcher\src\nsautowindowstatehelper.cpp
 @ 98]
0015f2cc 006382c8 02942940 5f972629 80000000 
thunderbird!nsAutoWindowStateHelper::nsAutoWindowStateHelper+0x16 (FPO: 
[Non-Fpo]) (CONV: thiscall) 
[e:\buildbot\win32_build_31\build\mozilla\embedding\components\windowwatcher\src\nsautowindowstatehelper.cpp
 @ 56]
0015f500 006386a1 02942940 00b1e844 00970bd0 
thunderbird!nsWindowWatcher::OpenWindowJSInternal+0x10e1 (FPO: [Non-Fpo]) 
(CONV: thiscall) 
[e:\buildbot\win32_build_31\build\mozilla\embedding\components\windowwatcher\src\nswindowwatcher.cpp
 @ 998]
0015f560 00645220 0393a460 02942940 00b1e844 
thunderbird!nsWindowWatcher::OpenWindow+0x1e7 (FPO: [Non-Fpo]) (CONV: stdcall) 
[e:\buildbot\win32_build_31\build\mozilla\embedding\components\windowwatcher\src\nswindowwatcher.cpp
 @ 425]
0015f594 0064544c 00000000 0a5b4380 0a5c7300 
thunderbird!nsPromptService::DoDialog+0x7c (FPO: [Non-Fpo]) (CONV: stdcall) 
[e:\buildbot\win32_build_31\build\mozilla\embedding\components\windowwatcher\src\nspromptservice.cpp
 @ 797]
0015f688 00647388 04b67660 02942940 0a5c66a0 
thunderbird!nsPromptService::Alert+0x189 (FPO: [Non-Fpo]) (CONV: stdcall) 
[e:\buildbot\win32_build_31\build\mozilla\embedding\components\windowwatcher\src\nspromptservice.cpp
 @ 148]
0015f69c 008515c7 0a5c23a0 0a5c66a0 0a125268 thunderbird!nsPrompt::Alert+0x19 
(FPO: [3,0,0]) (CONV: stdcall) 
[e:\buildbot\win32_build_31\build\mozilla\embedding\components\windowwatcher\src\nsprompt.cpp
 @ 199]

So, skipping down a bit, it looks like something has already gone wrong before this exception is thrown. The app is attempting to show an alert box, which fails because of an out-of-memory condition.

The details are probably not important.

You need to track down where the first error occurs. Is there a logging subsystem that can tell you what the alert was?

- Marsh

--
dev-tech-crypto mailing list
dev-tech-crypto@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-tech-crypto

Reply via email to