Qt

Вылеты Q_ASSERT(c->sender == q_ptr);

Появилась достаточно странная бага — вылеты при отладке и чуть реже при релизе с этой ошибкой.

Сколько бы я не пытался выяснить конкретное место ошибки — везде был облом, пока не понял, что недавно одна из библиотек обновилась.

Чтож, виновник теоретический найден, но вот поиски что именно не так доставило несколько геммора. 

В общем причина была в незакрытом  #pragma pack(8), заменим его на #pragma pack(push, 1)  тем самым запомнив предыдущие настройки, а после объявлений структур восстановим настройки #pragma pack(pop) что бы Qt сума не сходил.

Related posts

QML Сделать задержку перед началом анимации

QtCreator не открывает диалог выбора файлов, проектов, не открывает проект

Сборка Qt 6.8 (Dev) из исходников в Docker контейнере (Linux)

1 comment

Pablo 29 апреля 2024 - 8:38
Q_ASSERT только для отладки, в релизе он отключается, см дефайны. Я тоже долго удалялся, что прога глючит пока не посмотрел код Q_ASSERT
Add Comment