Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

SEGFAULT after Qt update



  • Hi,

    After Qt update, I have a SEGFAULT here: https://github.com/alphaonex86/CatchChallenger/blob/master/client/ultimate/mainwindow.cpp#L94

    My backtrace is:

    ==29259== Invalid read of size 8
    ==29259==    at 0x590F759: updateObjects(QList<QObject const*> const&) (in /usr/lib64/libQt5Widgets.so.5.11.3)
    ==29259==    by 0x590F887: QStyleSheetStyle::repolish(QWidget*) (in /usr/lib64/libQt5Widgets.so.5.11.3)
    ==29259==    by 0x589D4C6: QWidgetPrivate::inheritStyle() (in /usr/lib64/libQt5Widgets.so.5.11.3)
    ==29259==    by 0x589D337: QWidgetPrivate::setStyle_helper(QStyle*, bool, bool) (in /usr/lib64/libQt5Widgets.so.5.11.3)
    ==29259==    by 0x589D61A: QWidgetPrivate::inheritStyle() (in /usr/lib64/libQt5Widgets.so.5.11.3)
    ==29259==    by 0x589D337: QWidgetPrivate::setStyle_helper(QStyle*, bool, bool) (in /usr/lib64/libQt5Widgets.so.5.11.3)
    ==29259==    by 0x589D61A: QWidgetPrivate::inheritStyle() (in /usr/lib64/libQt5Widgets.so.5.11.3)
    ==29259==    by 0x589D337: QWidgetPrivate::setStyle_helper(QStyle*, bool, bool) (in /usr/lib64/libQt5Widgets.so.5.11.3)
    ==29259==    by 0x589D61A: QWidgetPrivate::inheritStyle() (in /usr/lib64/libQt5Widgets.so.5.11.3)
    ==29259==    by 0x58ADDED: QWidget::setParent(QWidget*, QFlags<Qt::WindowType>) (in /usr/lib64/libQt5Widgets.so.5.11.3)
    ==29259==    by 0x588A91D: QLayout::addChildWidget(QWidget*) (in /usr/lib64/libQt5Widgets.so.5.11.3)
    ==29259==    by 0x589091C: QStackedLayout::insertWidget(int, QWidget*) (in /usr/lib64/libQt5Widgets.so.5.11.3)
    ==29259==  Address 0x23e516d8 is 8 bytes inside a block of size 16 free'd
    ==29259==    at 0x4C309FB: operator delete(void*, unsigned long) (vg_replace_malloc.c:585)
    ==29259==    by 0x67E4BE0: QTextDocumentPrivate::clear() (in /usr/lib64/libQt5Gui.so.5.11.3)
    ==29259==    by 0x67D4846: QTextDocument::setHtml(QString const&) (in /usr/lib64/libQt5Gui.so.5.11.3)
    ==29259==    by 0x5998AC4: QLabelPrivate::ensureTextPopulated() const [clone .part.41] (in /usr/lib64/libQt5Widgets.so.5.11.3)
    ==29259==    by 0x5999C94: QLabelPrivate::ensureTextLayouted() const (in /usr/lib64/libQt5Widgets.so.5.11.3)
    ==29259==    by 0x599AE0F: QLabelPrivate::sizeForWidth(int) const (in /usr/lib64/libQt5Widgets.so.5.11.3)
    ==29259==    by 0x599B4A6: QLabel::minimumSizeHint() const (in /usr/lib64/libQt5Widgets.so.5.11.3)
    ==29259==    by 0x599B562: QLabel::sizeHint() const (in /usr/lib64/libQt5Widgets.so.5.11.3)
    ==29259==    by 0x588DE33: QWidgetItemV2::updateCacheIfNecessary() const (in /usr/lib64/libQt5Widgets.so.5.11.3)
    ==29259==    by 0x588E11C: QWidgetItemV2::maximumSize() const (in /usr/lib64/libQt5Widgets.so.5.11.3)
    ==29259==    by 0x58826F1: QBoxLayoutPrivate::setupGeom() [clone .part.35] (in /usr/lib64/libQt5Widgets.so.5.11.3)
    ==29259==    by 0x58833C5: QBoxLayout::minimumSize() const (in /usr/lib64/libQt5Widgets.so.5.11.3)
    ==29259==  Block was alloc'd at
    ==29259==    at 0x4C2F75F: operator new(unsigned long) (vg_replace_malloc.c:334)
    ==29259==    by 0x67D1E8E: QTextDocument::createObject(QTextFormat const&) (in /usr/lib64/libQt5Gui.so.5.11.3)
    ==29259==    by 0x67E0E3C: QTextDocumentPrivate::createObject(QTextFormat const&, int) (in /usr/lib64/libQt5Gui.so.5.11.3)
    ==29259==    by 0x67E0FFD: QTextDocumentPrivate::rootFrame() const (in /usr/lib64/libQt5Gui.so.5.11.3)
    ==29259==    by 0x680437C: QTextDocumentLayout::doLayout(int, int, int) (in /usr/lib64/libQt5Gui.so.5.11.3)
    ==29259==    by 0x68044F7: QTextDocumentLayoutPrivate::ensureLayoutedByPosition(int) const [clone .part.124] (in /usr/lib64/libQt5Gui.so.5.11.3)
    ==29259==    by 0x6804C1C: QTextDocumentLayoutPrivate::layoutStep() const (in /usr/lib64/libQt5Gui.so.5.11.3)
    ==29259==    by 0x6805616: QTextDocumentLayout::documentChanged(int, int, int) (in /usr/lib64/libQt5Gui.so.5.11.3)
    ==29259==    by 0x67E1DD9: QTextDocumentPrivate::finishEdit() (in /usr/lib64/libQt5Gui.so.5.11.3)
    ==29259==    by 0x67E3194: QTextDocumentPrivate::insertBlock(QChar, int, int, int, QTextUndoCommand::Operation) (in /usr/lib64/libQt5Gui.so.5.11.3)
    ==29259==    by 0x67E3394: QTextDocumentPrivate::init() (in /usr/lib64/libQt5Gui.so.5.11.3)
    ==29259==    by 0x67E4BF3: QTextDocumentPrivate::clear() (in /usr/lib64/libQt5Gui.so.5.11.3)
    

    It's just running the software of https://github.com/alphaonex86/CatchChallenger/blob/master/client/ultimate/catchchallenger-ultimate.pro somebody can help?

    Cheers,


  • Qt Champions 2019



  • Hi,

    I need a workaround.
    Then util Qt fix this, I can't dev?

    Cheers,


  • Lifetime Qt Champion

    @BRULE-Herman you should vote and comment on the bugreport. Probably some has a workaround.

    Also note, that a proposed fix is linked there, in case you compile Qt from source.


Log in to reply