OK, here is what looks to me like the relevant stuff... I'm determined to
get this fixed, I "need" this app (ya right... I've got vmware...)
=================>
0807bf40:Ret ws2_32.recv() retval=00000010 ret=410d966a
0807bf40:Call ws2_32.recv(00000174,42a908b0,0000004d,00000000) ret=410d966a
0807bf40:Call ntdll.wine_server_handle_to_fd(00000174,80000000,406f1cec,406f1d54,406f1d64) ret=411976f5
0807bf40:Ret ntdll.wine_server_handle_to_fd() retval=00000000 ret=411976f5
0807bf40:Call kernel32.GetProcessHeap() ret=4119693e
0807bf40:Ret kernel32.GetProcessHeap() retval=403d0000 ret=4119693e
0807bf40:Call ntdll.RtlAllocateHeap(403d0000,00000000,00000008) ret=4119695a
0807bf40:Ret ntdll.RtlAllocateHeap() retval=404d1be8 ret=4119695a
0807bf40:Call kernel32.GetProcessHeap() ret=41196c0c
0807bf40:Ret kernel32.GetProcessHeap() retval=403d0000 ret=41196c0c
0807bf40:Call ntdll.RtlFreeHeap(403d0000,00000000,404d1be8) ret=41196c25
0807bf40:Ret ntdll.RtlFreeHeap() retval=00000001 ret=41196c25
0807bf40:Ret ws2_32.recv() retval=0000004d ret=410d966a
0807bf40:Call msvcrt.malloc(00000008) ret=5f40384f
0807bf40:Call kernel32.GetProcessHeap() ret=40f216bf
0807bf40:Ret kernel32.GetProcessHeap() retval=403d0000 ret=40f216bf
0807bf40:Call ntdll.RtlAllocateHeap(403d0000,00000000,00000008) ret=40f216d6
0807bf40:Ret ntdll.RtlAllocateHeap() retval=404d1be8 ret=40f216d6
0807bf40:Ret msvcrt.malloc() retval=404d1be8 ret=5f40384f
<================
so far, so good, right? Looks like pretty normal stuff going on here;
the exception is raised by proprietary code within starteam, but they
like to catch their own exceptions, I think it's supposed to pass
and be handled. In the debugger, the stack looks great, goes back
cleanly all the way to init.
=================>
0807bf40:Call msvcrt._CxxThrowException(406f1f4c,410dff80) ret=410d4d0a
0807bf40:Call kernel32.RaiseException(e06d7363,00000001,00000003,406f1e24) ret=40f15b9e
trace:seh:EXC_RtlRaiseException code=e06d7363 flags=1 addr=0x401060f4
trace:seh:EXC_RtlRaiseException info[0]=19930520
trace:seh:EXC_RtlRaiseException info[1]=406f1f4c
trace:seh:EXC_RtlRaiseException info[2]=410dff80
trace:seh:EXC_CallHandler calling handler at 0x410de5e6 code=e06d7363 flags=1
0807bf40:Call msvcrt.__CxxFrameHandler(406f1cc4,406f1f68,406f1960,406f1940) ret=4010c420 fs=008f
eax=410dff20 ebx=40149d30 ecx=401614a8 edx=00000034 esi=406f1f70 edi=406f195c
ebp=406f18a4 esp=406f1860 ds=002b es=002b gs=0000 flags=00000212
0807bf40:Ret msvcrt.__CxxFrameHandler() retval=00000001 ret=4010c420 fs=008f
eax=00000001 ebx=40149d30 ecx=401614a8 edx=00000034 esi=406f1f70 edi=406f195c
ebp=406f18a4 esp=406f1860 ds=002b es=002b gs=0000 flags=00000212
trace:seh:EXC_CallHandler handler returned 1
<===============
OK, one handler called, ExceptionContinueSearch. now here comes something more
significant....
=============>
trace:seh:EXC_CallHandler calling handler at 0x410de4b4 code=e06d7363 flags=1
0807bf40:Call msvcrt.__CxxFrameHandler(406f1cc4,406f1fc8,406f1960,406f1940) ret=4010c420 fs=008f
eax=410dfc20 ebx=40149d30 ecx=401614a8 edx=00000034 esi=406f1fd0 edi=406f195c
ebp=406f18a4 esp=406f1860 ds=002b es=002b gs=0000 flags=00000212
trace:seh:cxx_frame_handler handling C++ exception rec 0x406f1cc4 frame 0x406f1fc8 trylevel 0 descr 0x410dfc20
exception type:
flags 0 destr (nil) handler (nil) type info 0x410dff68
0: flags 1 type 0x410e4400 ((nil) .PAVCStCommandExceptionDetected@@) offset 0 vbase -1,0 size 4 copy ctor (nil)
1: flags 1 type 0x410e43e0 ((nil) .PAVCException@@) offset 0 vbase -1,0 size 4 copy ctor (nil)
2: flags 1 type 0x410e4440 ((nil) .PAVCObject@@) offset 0 vbase -1,0 size 4 copy ctor (nil)
3: flags 1 type 0x410e4430 ((nil) .PAX) offset 0 vbase -1,0 size 4 copy ctor (nil)
function descr:
magic 19930520
unwind table: 0x410dfc40 4
0: prev -1 func (nil)
1: prev -1 func (nil)
2: prev 1 func (nil)
3: prev 1 func (nil)
try table: 0x410dfc60 2
0: start 2 end 2 catchlevel 3 catch 0x410dfc88 1
0: flags 0 offset -28 handler 0x410d2b63 type 0x410e43e0 ((nil) .PAVCException@@)
1: start 0 end 0 catchlevel 3 catch 0x410dfc98 2
0: flags 0 offset -24 handler 0x410d2b36 type 0x410e4400 ((nil) .PAVCStCommandExceptionDetected@@)
1: flags 0 offset 0 handler 0x410d2b52 type (nil)
trace:seh:call_catch_block matched type 0x410dff48 in tryblock 1 catchblock 0
<============
allright, obviously we're in cxx_frame_handler, at "normal_handler:". So far,
everyone seems happy. Off we go into call_catch_block
============>
trace:seh:EXC_RtlUnwind code=e06d7363 flags=3
trace:seh:EXC_CallHandler calling handler at 0x4010c310 code=e06d7363 flags=3
trace:seh:EXC_CallHandler handler returned 1
trace:seh:EXC_CallHandler calling handler at 0x410de5e6 code=e06d7363 flags=3
0807bf40:Call msvcrt.__CxxFrameHandler(406f1cc4,406f1f68,406f0ea4,406f0dd8) ret=4010c420 fs=008f
eax=410dff20 ebx=40149d30 ecx=401614a8 edx=00000034 esi=406f1f70 edi=406f0ea0
ebp=406f0da0 esp=406f0d5c ds=002b es=002b gs=0000 flags=00000216
0807bf40:Ret msvcrt.__CxxFrameHandler() retval=00000001 ret=4010c420 fs=008f
eax=00000001 ebx=40149d30 ecx=401614a8 edx=00000034 esi=406f1f70 edi=406f0ea0
ebp=406f0da0 esp=406f0d5c ds=002b es=002b gs=0000 flags=00000216
trace:seh:EXC_CallHandler handler returned 1
0807bf40:Ret ntdll.RtlUnwind() retval=00000000 ret=40f15d99
<==========
Presumably we're still in call_catch_block, really justin the RtlUnwind parts.
Now the catch block is called...
============>
trace:seh:call_catch_block calling catch block 0x410dfc98 for type 0x410dff48 addr 0x410d2b36 ebp 0x406f1fd4
0807bf40:Call msvcrt.free(404d1be8) ret=5f40388b
0807bf40:Call kernel32.GetProcessHeap() ret=40f21687
0807bf40:Ret kernel32.GetProcessHeap() retval=403d0000 ret=40f21687
0807bf40:Call ntdll.RtlFreeHeap(403d0000,00000000,404d1be8) ret=40f216a0
0807bf40:Ret ntdll.RtlFreeHeap() retval=00000001 ret=40f216a0
0807bf40:Ret msvcrt.free() retval=00000001 ret=5f40388b
0807bf40:Call msvcrt.malloc(00000050) ret=5f40384f
0807bf40:Call kernel32.GetProcessHeap() ret=40f216bf
0807bf40:Ret kernel32.GetProcessHeap() retval=403d0000 ret=40f216bf
0807bf40:Call ntdll.RtlAllocateHeap(403d0000,00000000,00000050) ret=40f216d6
0807bf40:Ret ntdll.RtlAllocateHeap() retval=404d55d8 ret=40f216d6
0807bf40:Ret msvcrt.malloc() retval=404d55d8 ret=5f40384f
0807bf40:Call msvcrt.memcpy(406f1234,42a908b0,00000004) ret=410d4a2e
0807bf40:Ret msvcrt.memcpy() retval=406f1234 ret=410d4a2e
0807bf40:Call msvcrt.memcpy(406f11fc,42a908b4,00000012) ret=410d4a2e
0807bf40:Ret msvcrt.memcpy() retval=406f11fc ret=410d4a2e
0807bf40:Call ntdll.RtlEnterCriticalSection(5f4d0088) ret=5f4020bd
0807bf40:Ret ntdll.RtlEnterCriticalSection() retval=00000000 ret=5f4020bd
0807bf40:Call ntdll.RtlLeaveCriticalSection(5f4d0088) ret=5f402103
0807bf40:Ret ntdll.RtlLeaveCriticalSection() retval=00000000 ret=5f402103
0807bf40:Call msvcrt.memcpy(42a902c0,5f4d1b58,00000001) ret=5f402676
0807bf40:Ret msvcrt.memcpy() retval=42a902c0 ret=5f402676
0807bf40:Call msvcrt.memcpy(406f1234,42a908c6,00000004) ret=410d4a2e
0807bf40:Ret msvcrt.memcpy() retval=406f1234 ret=410d4a2e
0807bf40:Call msvcrt.memcpy(406f1294,42a908ca,00000004) ret=410d4a2e
0807bf40:Ret msvcrt.memcpy() retval=406f1294 ret=410d4a2e
0807bf40:Call msvcrt.memcpy(406f1290,42a908ce,00000004) ret=410d4a2e
0807bf40:Ret msvcrt.memcpy() retval=406f1290 ret=410d4a2e
0807bf40:Call msvcrt.memcpy(404d5600,42a908d2,00000004) ret=410d4a2e
0807bf40:Ret msvcrt.memcpy() retval=404d5600 ret=410d4a2e
0807bf40:Call msvcrt.memcpy(404d55f8,42a908d6,00000008) ret=410d4a2e
0807bf40:Ret msvcrt.memcpy() retval=404d55f8 ret=410d4a2e
0807bf40:Call msvcrt.memcpy(406f1234,42a908de,00000004) ret=410d4a2e
0807bf40:Ret msvcrt.memcpy() retval=406f1234 ret=410d4a2e
0807bf40:Call msvcrt.memcpy(406f11f8,42a908e2,00000017) ret=410d4a2e
0807bf40:Ret msvcrt.memcpy() retval=406f11f8 ret=410d4a2e
0807bf40:Call ntdll.RtlEnterCriticalSection(5f4d0088) ret=5f4020bd
0807bf40:Ret ntdll.RtlEnterCriticalSection() retval=00000000 ret=5f4020bd
0807bf40:Call ntdll.RtlLeaveCriticalSection(5f4d0088) ret=5f402103
0807bf40:Ret ntdll.RtlLeaveCriticalSection() retval=00000000 ret=5f402103
0807bf40:Call msvcrt.memcpy(42a90310,5f4d1b58,00000001) ret=5f402676
0807bf40:Ret msvcrt.memcpy() retval=42a90310 ret=5f402676
0807bf40:Call msvcrt.memcpy(406f122c,42a908f9,00000004) ret=410d4a2e
0807bf40:Ret msvcrt.memcpy() retval=406f122c ret=410d4a2e
0807bf40:Call msvcrt.malloc(00000194) ret=5f40384f
0807bf40:Call kernel32.GetProcessHeap() ret=40f216bf
0807bf40:Ret kernel32.GetProcessHeap() retval=403d0000 ret=40f216bf
0807bf40:Call ntdll.RtlAllocateHeap(403d0000,00000000,00000194) ret=40f216d6
0807bf40:Ret ntdll.RtlAllocateHeap() retval=42aeaf30 ret=40f216d6
0807bf40:Ret msvcrt.malloc() retval=42aeaf30 ret=5f40384f
0807bf40:Call msvcrt.memset(42aeaf30,00000000,00000194) ret=410d3b8b
0807bf40:Ret msvcrt.memset() retval=42aeaf30 ret=410d3b8b
0807bf40:Call msvcrt._CxxThrowException(406f12b0,410dfdf8) ret=410d2f3c
<===============
The handler wants to raise a new exception.
===============>
0807bf40:Call kernel32.RaiseException(e06d7363,00000001,00000003,406f1190) ret=40f15b9e
trace:seh:EXC_RtlRaiseException code=e06d7363 flags=1 addr=0x401060f4
trace:seh:EXC_RtlRaiseException info[0]=19930520
trace:seh:EXC_RtlRaiseException info[1]=406f12b0
trace:seh:EXC_RtlRaiseException info[2]=410dfdf8
trace:seh:EXC_CallHandler calling handler at 0x410de4e6 code=e06d7363 flags=1
0807bf40:Call msvcrt.__CxxFrameHandler(406f1030,406f12c8,406f0ccc,406f0cac) ret=4010c420 fs=008f
eax=410dfce8 ebx=40149d30 ecx=401614a8 edx=00000034 esi=406f12d0 edi=406f0cc8
ebp=406f0c10 esp=406f0bcc ds=002b es=002b gs=0000 flags=00000216
0807bf40:Ret msvcrt.__CxxFrameHandler() retval=00000001 ret=4010c420 fs=008f
eax=00000001 ebx=40149d30 ecx=401614a8 edx=00000034 esi=406f12d0 edi=406f0cc8
ebp=406f0c10 esp=406f0bcc ds=002b es=002b gs=0000 flags=00000216
trace:seh:EXC_CallHandler handler returned 1
<===============
looks familiar, we're at normal_handler again, and calling call_catch_block once more...?
================>
trace:seh:EXC_CallHandler calling handler at 0x410de4b4 code=e06d7363 flags=1
0807bf40:Call msvcrt.__CxxFrameHandler(406f1030,406f1fc8,406f0ccc,406f0cac) ret=4010c420 fs=008f
eax=410dfc20 ebx=40149d30 ecx=401614a8 edx=00000034 esi=406f1fd0 edi=406f0cc8
ebp=406f0c10 esp=406f0bcc ds=002b es=002b gs=0000 flags=00000216
trace:seh:cxx_frame_handler handling C++ exception rec 0x406f1030 frame 0x406f1fc8 trylevel 1 descr 0x410dfc20
exception type:
flags 0 destr (nil) handler (nil) type info 0x410dfde0
0: flags 1 type 0x410e4478 ((nil) .PAVCStBaseServerException@@) offset 0 vbase -1,0 size 4 copy ctor (nil)
1: flags 1 type 0x410e4458 ((nil) .PAVCStException@@) offset 0 vbase -1,0 size 4 copy ctor (nil)
2: flags 1 type 0x410e43e0 ((nil) .PAVCException@@) offset 0 vbase -1,0 size 4 copy ctor (nil)
3: flags 1 type 0x410e4440 ((nil) .PAVCObject@@) offset 0 vbase -1,0 size 4 copy ctor (nil)
4: flags 1 type 0x410e4430 ((nil) .PAX) offset 0 vbase -1,0 size 4 copy ctor (nil)
function descr:
magic 19930520
unwind table: 0x410dfc40 4
0: prev -1 func (nil)
1: prev -1 func (nil)
2: prev 1 func (nil)
3: prev 1 func (nil)
try table: 0x410dfc60 2
0: start 2 end 2 catchlevel 3 catch 0x410dfc88 1
0: flags 0 offset -28 handler 0x410d2b63 type 0x410e43e0 ((nil) .PAVCException@@)
1: start 0 end 0 catchlevel 3 catch 0x410dfc98 2
0: flags 0 offset -24 handler 0x410d2b36 type 0x410e4400 ((nil) .PAVCStCommandExceptionDetected@@)
1: flags 0 offset 0 handler 0x410d2b52 type (nil)
0807bf40:Ret msvcrt.__CxxFrameHandler() retval=00000001 ret=4010c420 fs=008f
eax=00000001 ebx=40149d30 ecx=401614a8 edx=00000034 esi=406f1fd0 edi=406f0cc8
ebp=406f0c10 esp=406f0bcc ds=002b es=002b gs=0000 flags=00000216
trace:seh:EXC_CallHandler handler returned 1
<============
looks like it wasn't interested... Not sure if I really understand what happened there...
===========>
trace:seh:EXC_CallHandler calling handler at 0x410a5add code=e06d7363 flags=1
0807bf40:Call msvcrt.__CxxFrameHandler(406f1030,406f2108,406f0ccc,406f0cac) ret=4010c420 fs=008f
eax=410ab3f8 ebx=40149d30 ecx=401614a8 edx=00000034 esi=406f2110 edi=406f0cc8
ebp=406f0c10 esp=406f0bcc ds=002b es=002b gs=0000 flags=00000216
trace:seh:cxx_frame_handler handling C++ exception rec 0x406f1030 frame 0x406f2108 trylevel 1 descr 0x410ab3f8
exception type:
flags 0 destr (nil) handler (nil) type info 0x410dfde0
0: flags 1 type 0x410e4478 ((nil) .PAVCStBaseServerException@@) offset 0 vbase -1,0 size 4 copy ctor (nil)
1: flags 1 type 0x410e4458 ((nil) .PAVCStException@@) offset 0 vbase -1,0 size 4 copy ctor (nil)
2: flags 1 type 0x410e43e0 ((nil) .PAVCException@@) offset 0 vbase -1,0 size 4 copy ctor (nil)
3: flags 1 type 0x410e4440 ((nil) .PAVCObject@@) offset 0 vbase -1,0 size 4 copy ctor (nil)
4: flags 1 type 0x410e4430 ((nil) .PAX) offset 0 vbase -1,0 size 4 copy ctor (nil)
function descr:
magic 19930520
unwind table: 0x410ab418 7
0: prev -1 func (nil)
1: prev 0 func (nil)
2: prev 1 func 0x410a5abd
3: prev 2 func 0x410a5ac6
4: prev 3 func 0x410a5acf
5: prev 0 func (nil)
6: prev -1 func (nil)
try table: 0x410ab450 2
0: start 1 end 4 catchlevel 5 catch 0x410ab478 2
0: flags 0 offset -80 handler 0x41082e43 type 0x410b5070 ((nil) .PAVCException@@)
1: flags 0 offset 0 handler 0x41082e6d type (nil)
1: start 0 end 5 catchlevel 6 catch 0x410ab498 2
0: flags 0 offset -84 handler 0x41082e9c type 0x410b5070 ((nil) .PAVCException@@)
1: flags 0 offset 0 handler 0x41082eb9 type (nil)
trace:seh:call_catch_block matched type 0x410dfd80 in tryblock 0 catchblock 0
<=============
Allright, I'm kind of lost now, but we've obviously found our way back into
normal_handler once more, and this time call_catch_block is going to take some
action, calling back into Starteam once more; first it does the RtlUnwind ritual:
============>
0807bf40:Call ntdll.RtlUnwind(406f2108,00000000,406f1030,00000000) ret=40f15d99
trace:seh:EXC_RtlUnwind code=e06d7363 flags=3
trace:seh:EXC_CallHandler calling handler at 0x4010c310 code=e06d7363 flags=3
trace:seh:EXC_CallHandler handler returned 1
trace:seh:EXC_CallHandler calling handler at 0x410de4e6 code=e06d7363 flags=3
0807bf40:Call msvcrt.__CxxFrameHandler(406f1030,406f12c8,406f0210,406f0144) ret=4010c420 fs=008f
eax=410dfce8 ebx=40149d30 ecx=401614a8 edx=00000034 esi=406f12d0 edi=406f020c
ebp=406f010c esp=406f00c8 ds=002b es=002b gs=0000 flags=00000202
0807bf40:Ret msvcrt.__CxxFrameHandler() retval=00000001 ret=4010c420 fs=008f
eax=00000001 ebx=40149d30 ecx=401614a8 edx=00000034 esi=406f12d0 edi=406f020c
ebp=406f010c esp=406f00c8 ds=002b es=002b gs=0000 flags=00000202
trace:seh:EXC_CallHandler handler returned 1
trace:seh:EXC_CallHandler calling handler at 0x410de4b4 code=e06d7363 flags=3
0807bf40:Call msvcrt.__CxxFrameHandler(406f1030,406f1fc8,406f0210,406f0144) ret=4010c420 fs=008f
eax=410dfc20 ebx=40149d30 ecx=401614a8 edx=00000034 esi=406f1fd0 edi=406f020c
ebp=406f010c esp=406f00c8 ds=002b es=002b gs=0000 flags=00000202
0807bf40:Ret msvcrt.__CxxFrameHandler() retval=00000001 ret=4010c420 fs=008f
eax=00000001 ebx=40149d30 ecx=401614a8 edx=00000034 esi=406f1fd0 edi=406f020c
ebp=406f010c esp=406f00c8 ds=002b es=002b gs=0000 flags=00000202
trace:seh:EXC_CallHandler handler returned 1
0807bf40:Ret ntdll.RtlUnwind() retval=00000000 ret=40f15d99
<=============
Allright, here it goes.
==============>
trace:seh:call_catch_block calling catch block 0x410ab478 for type 0x410dfd80 addr 0x41082e43 ebp 0x406f2114
0807bf40:Call ntdll.RtlLeaveCriticalSection(42a00434) ret=41085594
0807bf40:Ret ntdll.RtlLeaveCriticalSection() retval=00000000 ret=41085594
0807bf40:Call msvcrt.clock() ret=40f3e262
0807bf40:Ret msvcrt.clock() retval=0000d354 ret=40f3e262
0807bf40:Call ntdll._ftol() ret=40f3e279
0807bf40:Ret ntdll._ftol() retval=0000d354 ret=40f3e279
0807bf40:Call kernel32.lstrcpynA(406ee63c,42a90310 "Event Handler not found",00002000) ret=4104386c
0807bf40:Ret kernel32.lstrcpynA() retval=406ee63c ret=4104386c
0807bf40:Call kernel32.lstrlenA(406ee63c "Event Handler not found") ret=5f4038e2
0807bf40:Ret kernel32.lstrlenA() retval=00000017 ret=5f4038e2
0807bf40:Call ntdll.RtlEnterCriticalSection(5f4d0088) ret=5f4020bd
0807bf40:Ret ntdll.RtlEnterCriticalSection() retval=00000000 ret=5f4020bd
0807bf40:Call ntdll.RtlLeaveCriticalSection(5f4d0088) ret=5f402103
0807bf40:Ret ntdll.RtlLeaveCriticalSection() retval=00000000 ret=5f402103
0807bf40:Call msvcrt.memcpy(42a90360,406ee63c,00000017) ret=5f403910
0807bf40:Ret msvcrt.memcpy() retval=42a90360 ret=5f403910
0807bf40:Call msvcrt._CxxThrowException(00000000,00000000) ret=41082e6d
<==============
StarTeam wants to re-raise again. So now, if I understand correctly, they're
going to nest another Raise within the already nested Raise. That's it for Starteam.
>From here on out, it's all wine. This is where TSHTF. Note that this time,
the arguments to ThrowException are both NULL... ostensibly (to me ;)
this is the root of the problem.
==============>
0807bf40:Call kernel32.RaiseException(e06d7363,00000001,00000003,406f0530) ret=40f15b9e
trace:seh:EXC_RtlRaiseException code=e06d7363 flags=1 addr=0x401060f4
trace:seh:EXC_RtlRaiseException info[0]=19930520
trace:seh:EXC_RtlRaiseException info[1]=00000000
trace:seh:EXC_RtlRaiseException info[2]=00000000
<=============
info[1] and [2] come from the ThrowException arguments (NULL, and NULL of course).
At this point, in cxx_excpeption_handler, info[2] becomes exc_type, and gets deferenced:
exc_type = (cxx_exception_type *)rec->ExceptionInformation[2];
if (rec->ExceptionCode != CXX_EXCEPTION) goto normal_handler;
if (rec->ExceptionInformation[0] != CXX_FRAME_MAGIC) goto normal_handler;
if (exc_type->custom_handler) <<<<<<<<<< SEGFAULT on NULL pointer deference here
Now chaos ensues:
===============>
trace:seh:EXC_CallHandler calling handler at 0x410a5add code=e06d7363 flags=1
0807bf40:Call msvcrt.__CxxFrameHandler(406f03d0,406f2108,406f006c,406f004c) ret=4010c420 fs=008f
eax=410ab3f8 ebx=40149d30 ecx=401614a8 edx=00000034 esi=406f2110 edi=406f0068
ebp=406effb0 esp=406eff6c ds=002b es=002b gs=0000 flags=00000216
trace:seh:EXC_RtlRaiseException code=c0000005 flags=0 addr=0x40f159a3
trace:seh:EXC_RtlRaiseException info[0]=00000000
trace:seh:EXC_RtlRaiseException info[1]=00000008
trace:seh:EXC_CallHandler calling handler at 0x4010c310 code=c0000005 flags=0
trace:seh:EXC_CallHandler handler returned 2
trace:seh:EXC_CallHandler calling handler at 0x410a5add code=c0000005 flags=10
0807bf40:Call msvcrt.__CxxFrameHandler(405e09d8,406f2108,405e0a44,405e099c) ret=4010c420 fs=008f
eax=410ab3f8 ebx=40149d30 ecx=401614a8 edx=00000035 esi=406f2110 edi=00000004
ebp=405e0900 esp=405e08bc ds=002b es=002b gs=0000 flags=00000212
trace:seh:cxx_frame_handler handling C++ exception rec 0x405e09d8 frame 0x406f2108 trylevel 5 descr 0x410ab3f8
exception type:
trace:seh:EXC_RtlRaiseException code=c0000005 flags=0 addr=0x40f151f5
trace:seh:EXC_RtlRaiseException info[0]=00000000
trace:seh:EXC_RtlRaiseException info[1]=0000000c
trace:seh:EXC_CallHandler calling handler at 0x4010c310 code=c0000005 flags=0
trace:seh:EXC_CallHandler handler returned 2
trace:seh:EXC_CallHandler calling handler at 0x4010c310 code=c0000005 flags=10
trace:seh:EXC_CallHandler handler returned 2
trace:seh:EXC_CallHandler calling handler at 0x410a5add code=c0000005 flags=10
0807bf40:Call msvcrt.__CxxFrameHandler(405dfd68,406f2108,405dfdd4,405dfd2c) ret=4010c420 fs=008f
eax=410ab3f8 ebx=40149d30 ecx=401614a8 edx=00000035 esi=406f2110 edi=00000004
ebp=405dfc90 esp=405dfc4c ds=002b es=002b gs=0000 flags=00000212
trace:seh:cxx_frame_handler handling C++ exception rec 0x405dfd68 frame 0x406f2108 trylevel 5 descr 0x410ab3f8
exception type:
trace:seh:EXC_RtlRaiseException code=c0000005 flags=0 addr=0x40f151f5
trace:seh:EXC_RtlRaiseException info[0]=00000000
trace:seh:EXC_RtlRaiseException info[1]=0000021e
trace:seh:EXC_CallHandler calling handler at 0x4010c310 code=c0000005 flags=0
trace:seh:EXC_CallHandler handler returned 2
trace:seh:EXC_CallHandler calling handler at 0x4010c310 code=c0000005 flags=10
trace:seh:EXC_CallHandler handler returned 2
trace:seh:EXC_CallHandler calling handler at 0x4010c310 code=c0000005 flags=10
trace:seh:EXC_CallHandler handler returned 2
trace:seh:EXC_CallHandler calling handler at 0x410a5add code=c0000005 flags=10
0807bf40:Call msvcrt.__CxxFrameHandler(405df0f8,406f2108,405df164,405df0bc) ret=4010c420 fs=008f
eax=410ab3f8 ebx=40149d30 ecx=401614a8 edx=00000035 esi=406f2110 edi=00000004
ebp=405df020 esp=405defdc ds=002b es=002b gs=0000 flags=00000212
trace:seh:cxx_frame_handler handling C++ exception rec 0x405df0f8 frame 0x406f2108 trylevel 5 descr 0x410ab3f8
exception type:
trace:seh:EXC_RtlRaiseException code=c0000005 flags=0 addr=0x40f151f5
trace:seh:EXC_RtlRaiseException info[0]=00000000
trace:seh:EXC_RtlRaiseException info[1]=0000021e
trace:seh:EXC_CallHandler calling handler at 0x4010c310 code=c0000005 flags=0
trace:seh:EXC_CallHandler handler returned 2
trace:seh:EXC_CallHandler calling handler at 0x4010c310 code=c0000005 flags=10
trace:seh:EXC_CallHandler handler returned 2
trace:seh:EXC_CallHandler calling handler at 0x4010c310 code=c0000005 flags=10
trace:seh:EXC_CallHandler handler returned 2
trace:seh:EXC_CallHandler calling handler at 0x4010c310 code=c0000005 flags=10
trace:seh:EXC_CallHandler handler returned 2
trace:seh:EXC_CallHandler calling handler at 0x410a5add code=c0000005 flags=10
<============
and so on. What have we learned, except that StarTeam was probably
written in Visual Basic? Not sure. I guess I need to focus on: "where are the
NULL's passed to ThrowException coming from?"?? Or is there something
more obvious going on here that I'm to ign'ant to grok?
thanks for your help,...
--
gmt
"If ye love wealth better than liberty, the tranquility
of servitude better than the animating contest of freedom,
go home from us in peace. We ask not your counsels or your
arms. Crouch down and lick the hands, which feed you. May
your chains set lightly upon you, and may posterity forget
that ye were our countrymen."
-Samuel Adams