Hi Aleš,

If you've got the crash with the precompiled binaries maybe you could try to build the library yourself from the sources and see if it would help.

Btw, current C++ standard requires passing only non-null character pointers to cout. It is not a definite crash though, it was my fault in my first answer.

Good luck!
        Vitaly


Aleš Trček wrote:
Hi!

The exact same program compiled on Linux (RHEL) works as expected - 
getTypeName() returns 0. So, so far Linux and Windows work, AIX crashes. Can 
someone else try this on AIX so we can make sure it is a platform-dependant bug?

Btw: passing 0 to cout has no (malicious) effect.

Regards,
Ales
_________________________________


-----Original Message-----
From: Vitaly Prapirny [mailto:[email protected]]
Sent: Thursday, March 22, 2012 10:40 AM
To: Aleš Trček
Cc: [email protected]
Subject: Re: Bug in DOMElement::getSchemaTypeInfo() ?

Aleš Trček wrote:
I don't think you understand, it's not that typeInfo->getTypeName() returned 0, 
the problem is that the call to typeInfo->getTypeName() causes illegal instruction.
As I said, typeInfo is not NULL, however accessing any of its members results 
in crash. The same applies for code that gets called in DOMDocumentImpl.cpp and 
in my sample code.
Returning 0 would be the correct behavior in my opinion, and then I wouldn't 
have any problems.

I'm sure that passing this returned 0 to std::cout is also a problem in your 
code. And you didn't point where your sample code got the crash in the previous 
message.

I'd try your sample code on Windows and get no crash in the getTypeName call 
(#define MakeXMLCh(a) xercesc::XMLString::transcode(a) has been used)

If you are sure that the crash occured inside the getTypeName call on AIX then 
you could try to debug you app yourself to find the place of corruption - there 
is not so much code to debug inside the createElementNS method.

Good luck!
        Vitaly


Reply via email to