Сбой libxml2 при повторном использовании в Windows - PullRequest
0 голосов
/ 27 июня 2010

Я использую push-синтаксический анализ libxml2 (SAX) для анализа входящего потока XML, это хорошо работает в первый раз, но каждый раз вылетает со второй попытки, мой код выглядит так:Затем я передаю поток XML с использованием xmlParseChunk() и использую обратные вызовы для обработки данных. После завершения анализа я вызываю xmlFreeParserCtxt(pSaxCtx) для освобождения контекста.Как я уже упоминал, все это отлично работает с первым набором данных, но когда код запускается снова, я получаю нарушение прав доступа, трассировка стека будет выглядеть так:раздел, который не существует или поврежден, но я не могу понять, как / почему он работает первый раз, а не второй.

Есть идеи?

Спасибо, J

1 Ответ

1 голос
/ 15 июня 2015

Два вызова в разных темах?

Вы вызвали функцию xmlInitParser для инициализации библиотеки. Отсутствующий вызов xmlInitParser создаст стек вызовов, аналогичный вашему, в многопоточных приложениях.

...