You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-dev@xerces.apache.org by bu...@apache.org on 2002/07/17 12:01:34 UTC

DO NOT REPLY [Bug 10887] New: - Access violation using DOMString or XMLString

DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=10887>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=10887

Access violation using DOMString or XMLString

           Summary: Access violation using DOMString or XMLString
           Product: Xerces-C++
           Version: 1.7.0
          Platform: PC
        OS/Version: Windows XP
            Status: NEW
          Severity: Blocker
          Priority: Other
         Component: Utilities
        AssignedTo: xerces-c-dev@xml.apache.org
        ReportedBy: qwirks@libero.it


Every time I try to use a DOMString or XMLString object (either creating a 
variable of that type or calling a function that uses theese objects (eg: 
DOM_Document::createElement() ), I obtain an Access Violation in XERCES-
c_1_7_0D.dll (0xC0000005).
I use MS-VC6 SP5. I tried the binary distribution of Xerces-C and recompiling 
the Xerces-C DLLs from the sources. The problem arises either in debug or 
release build, using either Debug-MultiThreaded or Debug-MultiThread-DLL 
runtime library, using MFC on not.
The problem seems to be in in XMLMutex::lock() : the fHandle member is not 
valid (I can't see its value in the watch window).
Here the sample code:

int APIENTRY WinMain(HINSTANCE hInstance,
                     HINSTANCE hPrevInstance,
                     LPSTR     lpCmdLine,
                     int       nCmdShow)
{
    try
    {
        XMLPlatformUtils::Initialize();
    }
    catch (const XMLException& toCatch)
    {
        return false;
    }

    DOMString tag_custom( "custom" );

    XMLPlatformUtils::Terminate();
    return 0;
}

The Access Violation arises when the return statement is executed.
If I use the new operator to create the tag_custom variable the problem seems 
solved, but when I try to use the variable in a function like 
DOM_Document::createElement() the exception arises again:

....
DOM_Document doc = DOM_Document::createDocument();
DOMString* tag_custom = new DOMString( "custom" );
DOM_Node el_custom = doc.createElement( *tag_custom );//<--- Here use DOMString
....

What's wrong ?

---------------------------------------------------------------------
To unsubscribe, e-mail: xerces-c-dev-unsubscribe@xml.apache.org
For additional commands, e-mail: xerces-c-dev-help@xml.apache.org