Раньше libxml2 читала большие текстовые данные кусками по несколько мегабайт и отдавала эти куски один за другим. Соответственно, не жрала память и справлялась с данными любого объёма.
Теперь она работает двумя способами: 1) по умолчанию читает данные до 10Мб, и если они больше, то просто обламывается и не работает; 2) с опцией XML_PARSE_HUGE читает всё, что может прочитать в память и только потом отдаёт данные. После отжирания нескольких гигов памяти затыкается, хз почему, и не работает. В итоге имеем полностью неработающую программу.
Как решать проблему?
Заранее спасибо за помощь.
P.S. Интерфейс xmlreader, так как нужны исключения C++.