Qt

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

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

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

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

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

Related posts

Qt QML nested Layouts, Layout.fillWidth: true не работает, и как быть с Layout.alignment

QML Text elide and show more

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

1 comment

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