xmlCreateURLParserCtxt
xmlNewParserCtxt
xmlInitParserCtxt
xmlDefaultSAXHandlerInit
xmlDoRead
xmlParseDocument
xmlInitParser
xmlInitThreads
InitializeCriticalSection(&cleanup_helpers_cs)
xmlDefaultSAXHandlerInit
...etc...
Thus, there are two calls of
xmlDefaultSAXHandlerInit causing in its turn:
xmlDefaultSAXHandlerInit
__htmlDefaultSAXHandler
xmlGetGlobalState
EnterCriticalSection(&cleanup_helpers_cs)
under condition of not main thread.
That is the first call of xmlDefaultSAXHandlerInit can access the critical
section
with no initializing it while the
second one is ok.
I followed the simple instruction
for 2.6.27 Windows version and preserved the default values for
cscript-ing configure.js
(compiler=msvc, threads=native)
with no trying, sorry, to investigate how macros were set. My library build
crashed
in multithreading environment until
I made
workaround threads=no.
Regards, Vlad