[reSIProcate] Datatype Misalignment exception in resiprocate.lib on a PocketPC device

唐 荣兴 yaotangbb at hotmail.com
Thu Dec 2 01:25:18 CST 2004


First of all , thank you for your replies very much ;I feel the wrong 
reason is perhaps dynamic_cast,But I do not know how to get rid of this 
mistake.

I debug the result roughly as follows:

------------------------------------------------------------------------------------

Datatype MisAlignment Debug
------------------------------------------------------------------------------------

request->header(h_To) = to;
-->defineHeader(To);
 // SipMessage.cxx
// resip::SipMessage::header(const resip::To_Header & {...}, 
//                           resip::HeaderFieldValueList * 0x0164fa4c) line 
1277 + 108 bytes
-->defineHeader(To, "To", NameAddr);
 // Headers.cxx

-->HeaderFieldValueList* 
SipMessage::ensureHeaders(Headers::Type type, bool single)

-->ParserContainerBase* getParserContainer() const {return 
mParserContainer;}

-->defineHeader(To, "To", NameAddr);

-->ParserContainer(HeaderFieldValueList* hfvs,

                   Headers::Type type = Headers::UNKNOWN)
    
     : ParserContainerBase(type)

-->void setParserContainer(ParserContainerBase* parser) {mParserContainer = 
parser;}
-->void setParserContainer(ParserContainerBase* parser) {mParserContainer = 
parser;}

-->c:\mckendric\private\winceos\coreos\core\corelibc\crtw32\rtti.cpp
__RTDynamicCast:
__RTDynamicCast(void *, 
				long 1083744, 
				void * 0x00000000, 
				void * 0x000c901c class resip::ParserContainerBase `RTTI Type 
Descriptor', 
				int 0) 
line 121 + 20 bytes



--- c:\mckendric\private\winceos\coreos\core\corelibc\crtw32\rtti\rtti.cpp  
------------
__RTDynamicCast:
2A0AE6B0   mov       r12, sp
2A0AE6B4   stmdb     sp!, {r0 - r3}
2A0AE6B8   stmdb     sp!, {r4 - r8, r11, r12, lr}
2A0AE6BC   add       r11, sp, #0x20
2A0AE6C0   sub       sp, sp, #0x3C
$L16273:
2A0AE6C4   mov       r5, r0
2A0AE6C8   mov       r4, r1
2A0AE6CC   mov       r8, r2
2A0AE6D0   mov       r6, r3
2A0AE6D4   cmp       r5, #0
2A0AE6D8   moveq     r4, #0
2A0AE6DC   moveq     r0, r4
2A0AE6E0   ldmeqdb   r11, {r4 - r8, r11, sp, pc}
$L16253:
2A0AE6E4   mov       r0, r5
2A0AE6E8   bl        |FindCompleteObject (2a0ae898)|



Thank you very much;Best regards to you!

Steven Tang

_________________________________________________________________
与联机的朋友进行交流,请使用 MSN Messenger:  http://messenger.msn.com/cn  




More information about the resiprocate-devel mailing list