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 2001/08/29 05:52:49 UTC
[DO NOT REPLY: Bug 3328] New:
gTranscoder pointer is NULL after XMLPlatformUtils::Initialize();
PLEASE DO NOT REPLY TO THIS MESSAGE. TO FURTHER COMMENT
ON THE STATUS OF THIS BUG PLEASE FOLLOW THE LINK BELOW
AND USE THE ON-LINE APPLICATION. REPLYING TO THIS MESSAGE
DOES NOT UPDATE THE DATABASE, AND SO YOUR COMMENT WILL
BE LOST SOMEWHERE.
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=3328
*** shadow/3328 Tue Aug 28 20:52:49 2001
--- shadow/3328.tmp.20955 Tue Aug 28 20:52:49 2001
***************
*** 0 ****
--- 1,85 ----
+ +============================================================================+
+ | gTranscoder pointer is NULL after XMLPlatformUtils::Initialize(); |
+ +----------------------------------------------------------------------------+
+ | Bug #: 3328 Product: Xerces-C++ |
+ | Status: NEW Version: 1.5.1 |
+ | Resolution: Platform: PC |
+ | Severity: Normal OS/Version: Windows NT/2K |
+ | Priority: Other Component: Utilities |
+ +----------------------------------------------------------------------------+
+ | Assigned To: xerces-c-dev@xml.apache.org |
+ | Reported By: franzw@one.net |
+ | CC list: Cc: |
+ +----------------------------------------------------------------------------+
+ | URL: |
+ +============================================================================+
+ | DESCRIPTION |
+ I'm using Xerces C++ 1.5.1 and Xalan C++ 1.2. I'm running on Windows 2K
+ Professional using VC6 SP5. I'm getting Access Violations parsing the the
+ following xml. I originally had the problem using the precompiled binaries,
+ but have continued to have the problem having compiled the Xalan and Xerces
+ libraries to include symbols. I've traced the Access Violation to the
+ following code at line 526 of XMLString.cpp. gTranscoder is NULL, and the
+ attempt to dereference it causes the Access Violation.
+
+ char* XMLString::transcode(const XMLCh* const toTranscode)
+ {
+ return gTranscoder->transcode(toTranscode);
+ }
+
+ I am calling XMLPlatformUtils::Initialize() (only once), and when I trace into
+ it, gTranscoder is getting set correctly, with no panic calls. But when I go
+ back in to the function above, it has been NULLed. I've included a stack
+ trace, and the code is small and can be mailed as well.
+
+ I originally had the problem with Xalan 1.0 and Xerces 1.3, but I've now had
+ the problem on all versions I've tried, including the latest.
+
+ <?xml version="1.0" encoding="UTF-8"?>
+ <!DOCTYPE partsPickList SYSTEM "partslist.dtd">
+ <partsPickList>
+ <header>
+ <creator version="1.0">
+ <date month="2" day="27" year="2000"/>
+ <time hour="14" min="47" sec="19"/>
+ </creator>
+ <dealer codeNum="DLR12345"/>
+ <destination name="DSP"/>
+ </header>
+ <part partNum="055295753" partQty="10"/>
+ <part partNum="04471573" partQty="5" partType="Body">
+ <partDescription>Bumper</partDescription>
+ <partPrice unit="300.0" retail="250.0"/>
+ </part>
+ <part partNum="000005016796aa" partQty="3" partType="Body">
+ <partDescription>hood</partDescription>
+ </part>
+ </partsPickList>
+
+ Stack Trace:
+
+ XMLString::transcode(const unsigned short * const 0x00e5b948) line 524
+ XMLPlatformUtils::getFullPath(const unsigned short * const 0x00e5b948) line 433
+ + 9 bytes
+ URISupport::getURLStringFromString(const unsigned short * 0x00e5b948) line 170
+ + 10 bytes
+ URISupport::getURLStringFromString(const XalanDOMString & {...}) line 130 + 90
+ bytes
+ StylesheetConstructionContextDefault::getURLStringFromString(const
+ XalanDOMString & {...}) line 306 + 18 bytes
+ Stylesheet::Stylesheet(StylesheetRoot & {...}, const XalanDOMString & {...},
+ StylesheetConstructionContext & {...}) line 172 + 28 bytes
+ StylesheetRoot::StylesheetRoot(const XalanDOMString & {...},
+ StylesheetConstructionContext & {...}) line 152 + 50 bytes
+ StylesheetConstructionContextDefault::create(const XalanDOMString & {...}) line
+ 214 + 48 bytes
+ StylesheetConstructionContextDefault::create(const XSLTInputSource & {...})
+ line 233 + 15 bytes
+ XSLTEngineImpl::processStylesheet(const XSLTInputSource & {...},
+ StylesheetConstructionContext & {...}) line 482 + 15 bytes
+ XSLTEngineImpl::processStylesheet(const XalanDOMString & {...},
+ StylesheetConstructionContext & {...}) line 463 + 19 bytes
+ xsltMain(const CmdLineParams & {...}) line 610 + 28 bytes
+ main(int 3, const char * * 0x00c11028) line 852 + 9 bytes
+ mainCRTStartup() line 206 + 25 bytes
+ KERNEL32! 77e97d08()
---------------------------------------------------------------------
To unsubscribe, e-mail: xerces-c-dev-unsubscribe@xml.apache.org
For additional commands, e-mail: xerces-c-dev-help@xml.apache.org