[jira] [Created] (XERCESC-2216) Building using NDK for arm64 occurs error while runing

"Kevin.zhai (Jira)" <[email protected]>
Newsgroups gmane.text.xml.xerces-c.devel
Message-ID <[email protected]>
Kevin.zhai created XERCESC-2216:
-----------------------------------

             Summary: Building using NDK for arm64 occurs error while runing
                 Key: XERCESC-2216
                 URL: https://issues.apache.org/jira/browse/XERCESC-2216
             Project: Xerces-C++
          Issue Type: Bug
          Components: Validating Parser (XML Schema)
    Affects Versions: 3.2.3
            Reporter: Kevin.zhai


Dear friend,

    I found a issue using NDK building on arm64, when prase a xml file , this issue occurs at  following code:

    source file: SMLString.cpp

code Snippet:

char* XMLString::transcode(const XMLCh* const toTranscode,
 MemoryManager* const manager)
{

printf("@@@@@ char* XMLString::transcode:%p pid:%d tid:%d\r\n", gTranscoder, getpid(), gettid());
    return gTranscoder->transcode(toTranscode, manager);
}

when invoke this code from the same thread, sometimes the gTranscoder is NULL,

gTranscoder is initialized in function:

void XMLString::initString(XMLLCPTranscoder* const defToUse,
 MemoryManager* const manager)
{
 // Store away the default transcoder that we are to use
 gTranscoder = defToUse;

// Store memory manager
 fgMemoryManager = manager;
}

and this function is ivoked by void XMLPlatformUtils::Initialize

{

......

XMLLCPTranscoder* defXCode = XMLPlatformUtils::fgTransService->makeNewLCPTranscoder(fgMemoryManager);
 printf("@@@@@ defXcode:%p pid:%d tid:%d\r\n", defXCode, getpid(), gettid());
 if (!defXCode)
 panic(PanicHandler::Panic_NoDefTranscoder);
 XMLString::initString(defXCode, fgMemoryManager);

.......

}

, the log is as following:

@@@@@ defXcode:0xb400007dd6a56cf8 pid:9915 tid:9922
@@@@@ AbstractStringValidator::assignFacet 666
@@@@@ AbstractStringValidator::assignFacet 777
@@@@@ AbstractStringValidator::assignFacet 666
@@@@@ AbstractStringValidator::assignFacet 777
@@@@@ AbstractStringValidator::assignFacet 666
@@@@@ AbstractStringValidator::assignFacet 777
@@@@@ AbstractStringValidator::assignFacet 222
@@@@@ parseInt 000.111
@@@@@ char* XMLString::transcode:0xb400007dd6a56cf8 pid:9915 tid:9922
@@@@@ parseInt nptr:1
@@@@@ AbstractStringValidator::assignFacet 333
@@@@@ DecimalDatatypeValidator::assignAdditionalFacet 222
@@@@@ parseInt 000.111
@@@@@ char* XMLString::transcode:0x0 pid:9915 tid:9922

 

please help me check the reason, thanks a lot.

 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.