[reSIProcate] Crash in Stack probe routine?
Hi List,
Has anyone encountered this error? I am writing a DLL linking with
reSIProcate (0.9.0) under VS .NET 2003. The DLL uses the static version of
MFC.
I am testing 2 user agents running in peer-to-peer presence mode. When one
user agent sends a status of "away", the other agent receiving the NOTIFY
crashes in the XmlCursor class. It looks like the crash happens inside
_chkstk( ) which is a stack probe inserted by the VC++ compiler when it
thinks the stack will be greater than 4KB.
I slightly modified the Pidf class to include support for activities.
Any hints on how to debug this?
Thanks,
CG
DEBUG | 20050715-110300.750 | xxxxxxxxxx.dll | RESIP:DUM | 4296 |
DialogUsageManager.cxx:1500 | Looking for dialogSet:
3c3b8257bf749c22@TmV3QWdlTGFwdG9w-674b2c0d in map:
DEBUG | 20050715-110300.750 | xxxxxxxxxx.dll | RESIP:DUM | 4296 |
DialogUsageManager.cxx:1501 | [3c3b8257bf749c22@TmV3QWdlTGFwdG9w-674b2c0d
-> 02534670, c52ae90a80359d72@TmV3QWdlTGFwdG9w-1e00d536 -> 02528990,
c5460b1276371c10@TmV3QWdlTGFwdG9w-272a8e74 -> 025241D0]
DEBUG | 20050715-110300.750 | xxxxxxxxxx.dll | RESIP:DUM | 4296 |
DialogUsageManager.cxx:607 | SEND: SIP/2.0 200 OK
To: <sip:chris2@xxxxxxxxxxxxx>;tag=674b2c0d
From: <sip:chris@xxxxxxxxxxxxx>;tag=ab3afb48
Via: SIP/2.0/UDP xxx.xx.xxx.xx;branch=z9hG4bK5941.dec5.0
Via: SIP/2.0/UDP
172.17.72.53:5065;branch=z9hG4bK-d87543-bd27c179e477ad60-1--d87543-;rport=5065
Call-ID: 3c3b8257bf749c22@TmV3QWdlTGFwdG9w
CSeq: 5 NOTIFY
Record-Route: <sip:chris2@xxxxxxxxxxxxx;ftag=ab3afb48;lr=on>
Contact: <sip:chris2>
User-Agent: ineen release 3005l stamp 17169
Content-Length: 0
DEBUG | 20050715-110300.765 | xxxxxxxxxx.dll | RESIP | 4296 |
SipStack.cxx:269 | SEND: SipResp: 200 tid=5941.dec5.0 cseq=NOTIFY
contact=chris2 / 5 from(tu)
allocate 253aa60
allocate 253aaa8
DEBUG | 20050715-110300.765 | xxxxxxxxxx.dll | RESIP | 4296 |
SipMessage.cxx:790 | SipMessage::getContents: application/pidf+xml
DEBUG | 20050715-110300.765 | xxxxxxxxxx.dll | RESIP | 4296 | Pidf.cxx:263
| Pidf::parse(<?xml version="1.0" encoding="UTF-8"?>
<presence xmlns="urn:ietf:params:xml:ns:pidf"
xmlns:ep="urn:ietf:params:xml:ns:pidf:rpid:rpid-person"
xmlns:pp="urn:ietf:params:xml:ns:pidf:person"
entity="sip:chris@xxxxxxxxxxxxx">
<pp:person>
<status>
<ep:activities>
<ep:activity>away</ep:activity>
</ep:activities>
</status>
</pp:person>
<tuple id="9b6yhF2Gk37o4" >
<status><basic>open</basic></status>
</tuple>
</presence>
)
STACK | 20050715-110300.765 | xxxxxxxxxx.dll | RESIP:CONTENTS | 4296 |
XMLCursor.cxx:440 | XMLCursor::Node::Node02542398[<presence
xmlns="urn:ietf:params:xm]
STACK | 20050715-110300.765 | xxxxxxxxxx.dll | RESIP:CONTENTS | 4296 |
XMLCursor.cxx:366 | attribute: xmlns
STACK | 20050715-110300.765 | xxxxxxxxxx.dll | RESIP:CONTENTS | 4296 |
XMLCursor.cxx:376 | quote is <">
STACK | 20050715-110300.765 | xxxxxxxxxx.dll | RESIP:CONTENTS | 4296 |
XMLCursor.cxx:366 | attribute: xmlns:ep
STACK | 20050715-110300.765 | xxxxxxxxxx.dll | RESIP:CONTENTS | 4296 |
XMLCursor.cxx:376 | quote is <">
STACK | 20050715-110300.765 | xxxxxxxxxx.dll | RESIP:CONTENTS | 4296 |
XMLCursor.cxx:366 | attribute: xmlns:pp
STACK | 20050715-110300.765 | xxxxxxxxxx.dll | RESIP:CONTENTS | 4296 |
XMLCursor.cxx:376 | quote is <">
STACK | 20050715-110300.765 | xxxxxxxxxx.dll | RESIP:CONTENTS | 4296 |
XMLCursor.cxx:366 | attribute: entity
STACK | 20050715-110300.765 | xxxxxxxxxx.dll | RESIP:CONTENTS | 4296 |
XMLCursor.cxx:376 | quote is <">
INFO | 20050715-110300.765 | xxxxxxxxxx.dll | RESIP | 4296 | Pidf.cxx:276 |
Presence attribute name: xmlns value: urn:ietf:params:xml:ns:pidf
INFO | 20050715-110300.765 | xxxxxxxxxx.dll | RESIP | 4296 | Pidf.cxx:276 |
Presence attribute name: xmlns:ep value:
urn:ietf:params:xml:ns:pidf:rpid:rpid-person
INFO | 20050715-110300.765 | xxxxxxxxxx.dll | RESIP | 4296 | Pidf.cxx:276 |
Presence attribute name: xmlns:pp value: urn:ietf:params:xml:ns:pidf:person
STACK | 20050715-110300.765 | xxxxxxxxxx.dll | RESIP:CONTENTS | 4296 |
XMLCursor.cxx:440 | XMLCursor::Node::Node02542A48[<pp:person>
<status>
<ep:a]
STACK | 20050715-110300.765 | xxxxxxxxxx.dll | RESIP:CONTENTS | 4296 |
XMLCursor.cxx:493 | XMLCursor::Node::skipToEndTag(pp:person)
STACK | 20050715-110300.765 | xxxxxxxxxx.dll | RESIP:CONTENTS | 4296 |
XMLCursor.cxx:440 | XMLCursor::Node::Node02542AD8[<status>
<ep:activities>
]
STACK | 20050715-110300.765 | xxxxxxxxxx.dll | RESIP:CONTENTS | 4296 |
XMLCursor.cxx:493 | XMLCursor::Node::skipToEndTag(status)
STACK | 20050715-110300.765 | xxxxxxxxxx.dll | RESIP:CONTENTS | 4296 |
XMLCursor.cxx:440 | XMLCursor::Node::Node02542BA8[<ep:activities>
<ep:activity>]
STACK | 20050715-110300.765 | xxxxxxxxxx.dll | RESIP:CONTENTS | 4296 |
XMLCursor.cxx:493 | XMLCursor::Node::skipToEndTag(ep:activities)
STACK | 20050715-110300.765 | xxxxxxxxxx.dll | RESIP:CONTENTS | 4296 |
XMLCursor.cxx:440 |
XMLCursor::Node::Node02542C78[<ep:activity>away</ep:activity>
]
STACK | 20050715-110300.765 | xxxxxxxxxx.dll | RESIP:CONTENTS | 4296 |
XMLCursor.cxx:493 | XMLCursor::Node::skipToEndTag(ep:activity)
First-chance exception at 0x01b07855 (xxxxxxxxxx.dll) in Test.exe:
0xC00000FD: Stack overflow.
Unhandled exception at 0x01b07855 (xxxxxxxxxx.dll) in Test.exe: 0xC00000FD:
Stack overflow.
Stack Trace
===========
> xxxxxxxxxx.dll!_chkstk() Line 91 Asm
xxxxxxxxxx.dll!resip::XMLCursor::Node::skipToEndTag() Line 523 +
0x60 C++
xxxxxxxxxx.dll!resip::XMLCursor::Node::skipToEndTag() Line 577 C++
xxxxxxxxxx.dll!resip::XMLCursor::Node::skipToEndTag() Line 577 C++
xxxxxxxxxx.dll!resip::XMLCursor::Node::skipToEndTag() Line 577 C++
xxxxxxxxxx.dll!resip::XMLCursor::parseNextRootChild() Line 230 C++
xxxxxxxxxx.dll!resip::XMLCursor::firstChild() Line 276 C++
xxxxxxxxxx.dll!resip::Pidf::parse(resip::ParseBuffer & pb={...})
Line 293 + 0xb C++
xxxxxxxxxx.dll!resip::LazyParser::checkParsed() Line 79 + 0x11 C++
xxxxxxxxxx.dll!resip::Pidf::getSimpleStatus(resip::Data *
note=0x0220cfec) Line 449 C++
...