/p /enable, повторная отображает, что все верно выставлено. Далее пустил релизную версию, спустя какое-то время упало на освобождении локальной переменной на стеке (как, по идее и должно быть в случае такой ошибки) - но локализация причины повреждения так и не видна. Я думал, что, включив флаги через gflags - мне покажет, как на первой попытке записи не туда уже вылезет проблема, но судя по стеку - нет, показывает все равно где-то после повреждения. Как тогда можно попытаться найти причину повреждения? Или в данном случае означает, что повреждение произошло где-то совсем рядом по стеку? Спасибо
Другой тул возьми, valgrind, DrMemory
Спасибо, дело под виндой, DrMemory что-то не дает даже приложению запуститься и кидает ложные срабатывания в qtшных либах... может, есть еще что-то более юзабельное под винду? пробовал heob и deleaker с qt - пофиксил тамошние найденные утечки, но видимо повреждение кучи они не определяют
Мб проблема на старте?
не думаю, там чисто qtшные инициализации Qt5Gui.dll!QGuiApplicationPrivate::init и тому подобное в логе
Это не отменяет возможность твоей ошибки
я не спорю, ошибка то явно моя, но на старте ничего похожего не происходит - DrMemory крашится вообще в самом начале, а gflags приводит к остановке уже спустя 1-2 часа работы многопоточного приложения
О, да ты смел, Пофиксил кьют...
ASan. Если вдруг через студию собираешь, то его можно прямо из маркета поставить
Собираю из qt на msvc2019, а нет ли способа поставить ASan в студию и через доп аргументы из qt применить? Или там компонент требует работы из-под интерфейса студии для вывода результатов
Обсуждают сегодня