170 похожих чатов

Здравствуйте, есть проблема с отладкой heap corruption: через gflags поставил

/p /enable, повторная отображает, что все верно выставлено. Далее пустил релизную версию, спустя какое-то время упало на освобождении локальной переменной на стеке (как, по идее и должно быть в случае такой ошибки) - но локализация причины повреждения так и не видна. Я думал, что, включив флаги через gflags - мне покажет, как на первой попытке записи не туда уже вылезет проблема, но судя по стеку - нет, показывает все равно где-то после повреждения. Как тогда можно попытаться найти причину повреждения? Или в данном случае означает, что повреждение произошло где-то совсем рядом по стеку? Спасибо

9 ответов

13 просмотров

Другой тул возьми, valgrind, DrMemory

Dmitry-Shulga Автор вопроса
Ilya Zviagin
Другой тул возьми, valgrind, DrMemory

Спасибо, дело под виндой, DrMemory что-то не дает даже приложению запуститься и кидает ложные срабатывания в qtшных либах... может, есть еще что-то более юзабельное под винду? пробовал heob и deleaker с qt - пофиксил тамошние найденные утечки, но видимо повреждение кучи они не определяют

Dmitry-Shulga Автор вопроса
Aidar Fattakhov
Мб проблема на старте?

не думаю, там чисто qtшные инициализации Qt5Gui.dll!QGuiApplicationPrivate::init и тому подобное в логе

Dmitry Shulga
не думаю, там чисто qtшные инициализации Qt5Gui.dl...

Это не отменяет возможность твоей ошибки

Dmitry-Shulga Автор вопроса
Aidar Fattakhov
Это не отменяет возможность твоей ошибки

я не спорю, ошибка то явно моя, но на старте ничего похожего не происходит - DrMemory крашится вообще в самом начале, а gflags приводит к остановке уже спустя 1-2 часа работы многопоточного приложения

Dmitry Shulga
Спасибо, дело под виндой, DrMemory что-то не дает ...

ASan. Если вдруг через студию собираешь, то его можно прямо из маркета поставить

Dmitry-Shulga Автор вопроса
Eduard Vrnk
ASan. Если вдруг через студию собираешь, то его мо...

Собираю из qt на msvc2019, а нет ли способа поставить ASan в студию и через доп аргументы из qt применить? Или там компонент требует работы из-под интерфейса студии для вывода результатов

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Гайс, вопрос для разносторонее развитых: читаю стрим с юарта, нада выделять с него фреймы с определенной структурой, если ли чо готовое, или долбаться с ринг буффером? нада у...
Vitaly
9
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
длина пакета фиксированная, или меняется?
Okhsunrog
7
Карта сайта