[xml] xmlCharEncodingHandler->output getting invalid



I have the problem, that I get exceptions when calling
xmlSaveFormatFileEnc(). The exceptions happens in xmlCharEncOutFunc()
when calling the handler->output() in line 1929 in encoding.c

I call xmlSaveFormatFileEnc() with an non-empty filename, a valid
xmlDocPtr, "iso-8859-1" and 1 for the format.

It works most of the times, but sometimes handler->output just points to
0xfeeefeee instead of a valid callback.

I use the libxml2 2.6.5 static in a multi-threaded MSVC6 project.
Problem happened in debug and non-debug builds. The problem also
happened with the 2.6.4. I am also using the libxslt 1.1.2 in the same
project, also statically linked and compiled with the 2.6.5 as include.

I assume, that the output callback is free'd somewhere or soemthing else
is messing with the handler. I try to investigate a bit more.

trace:
xmlSaveFormatFileEnc()
xmlOutputBufferCreateFilename()
xmlAllocOutputBuffer()
xmlCharEncOutFunc()

libxml2 config:
xml_debug=yes debug=yes static=yes iconv=no schemas=no regexps=no
docb=no threads=native ftp=no http=no reader=no walker=no legacy=no
xpath=yes xptr=no catalog=no xinclude=no c14n=no cruntime=/MT
(note: also happened with the two debug flags set to "no")

libxslt config:
xslt_debug=no debugger=no iconv=no static=yes
include=../../libxml2-2.6.5/include
lib=../../libxml2-2.6.5/win32/bin.msvc



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]