Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-74665

Crash in qt5.13 QListWidget when we use QT_DISABLE_DEPRECATED_BEFORE=0x060000

    XMLWordPrintable

Details

    • All
    • ed49a84e6caa8c76f2edd382a4405028d07a9fba

    Description

      Hi,

      I found a bug in qt when I use QT_DISABLE_DEPRECATED_BEFORE=0x060000

      It's a crash in qlistwidget.

       

      I created a testcase (see attachment)

      Just enable/disable DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000

      bt:

      Thread 1 "crash-qlistwidg" received signal SIGSEGV, Segmentation fault.
      0x00007ffff7d6140d in QListWidgetItem::setData (this=0x7fffffffcbd0, role=5682080, value=...) at ../../include/QtCore/../../src/corelib/tools/qarraydata.h:211
      211 iterator begin(iterator = iterator()) { return data(); }
      (gdb) where
      #0 0x00007ffff7d6140d in QListWidgetItem::setData (this=0x7fffffffcbd0, role=5682080, value=...) at ../../include/QtCore/../../src/corelib/tools/qarraydata.h:211
      #1 0x00007ffff7d5e9bd in QListModel::data (this=<optimized out>, index=..., role=<optimized out>) at ../../include/QtCore/../../src/corelib/tools/qlist.h:555
      #2 0x00007ffff7d4139d in QModelIndex::data (arole=13, this=0x7fffffffcd60) at ../../include/QtCore/../../src/corelib/itemmodels/qabstractitemmodel.h:462
      #3 QStyledItemDelegate::sizeHint (this=0x4f8320, option=..., index=...) at itemviews/qstyleditemdelegate.cpp:405
      #4 0x00007ffff7d5232a in QListViewPrivate::itemSize (this=0x565800, option=..., index=...) at itemviews/qlistview.cpp:1838
      #5 0x00007ffff7d59d54 in QCommonListViewBase::itemSize (this=0x7fffe400fd40, idx=..., opt=...) at ../../include/QtWidgets/5.13.0/QtWidgets/private/../../../../../src/widgets/itemviews/qlistview_p.h:492
      #6 QIconModeViewBase::doBatchedItemLayout (this=0x7fffe400fd40, info=..., max=70) at itemviews/qlistview.cpp:2981
      #7 0x00007ffff7d5211c in QListViewPrivate::doItemsLayout (this=this@entry=0x565800, delta=<optimized out>) at itemviews/qlistview.cpp:1775
      #8 0x00007ffff7d5bdaa in QListView::doItemsLayout (this=0x568380) at itemviews/qlistview.cpp:1490
      #9 0x00007ffff7d26008 in QAbstractItemViewPrivate::executePostedLayout (this=0x565800) at itemviews/qabstractitemview.cpp:1669
      #10 QAbstractItemView::event (this=0x568380, event=0x7fffffffd160) at itemviews/qabstractitemview.cpp:1651
      #11 0x00007ffff7ae7fe1 in QApplicationPrivate::notify_helper (this=this@entry=0x425200, receiver=receiver@entry=0x568380, e=e@entry=0x7fffffffd160) at kernel/qapplication.cpp:3739
      #12 0x00007ffff7aeef00 in QApplication::notify (this=0x7fffffffd540, receiver=0x568380, e=0x7fffffffd160) at kernel/qapplication.cpp:3486
      #13 0x00007ffff70ac659 in QCoreApplication::notifyInternal2 (receiver=0x568380, event=0x7fffffffd160) at ../../include/QtCore/../../src/corelib/kernel/qobject.h:142
      #14 0x00007ffff7b22373 in QWidgetPrivate::show_helper (this=0x565800) at kernel/qwidget.cpp:8074
      #15 0x00007ffff7b221d1 in QWidgetPrivate::show_recursive (this=<optimized out>) at kernel/qwidget.cpp:7945
      #16 0x00007ffff7b222ea in QWidgetPrivate::showChildren (this=this@entry=0x40e000, spontaneous=spontaneous@entry=false) at ../../include/QtWidgets/../../src/widgets/kernel/qwidget.h:131
      #17 0x00007ffff7b2234f in QWidgetPrivate::show_helper (this=this@entry=0x40e000) at kernel/qwidget.cpp:8021
      #18 0x00007ffff7b252e3 in QWidgetPrivate::setVisible (this=0x40e000, visible=<optimized out>) at kernel/qwidget.cpp:8378
      #19 0x00007ffff7b22300 in QWidgetPrivate::showChildren (this=this@entry=0x556fc0, spontaneous=spontaneous@entry=false) at kernel/qwidget.cpp:8456
      #20 0x00007ffff7b2234f in QWidgetPrivate::show_helper (this=this@entry=0x556fc0) at kernel/qwidget.cpp:8021
      #21 0x00007ffff7b252e3 in QWidgetPrivate::setVisible (this=0x556fc0, visible=<optimized out>) at kernel/qwidget.cpp:8378
      #22 0x00007ffff7b22300 in QWidgetPrivate::showChildren (this=this@entry=0x566a30, spontaneous=spontaneous@entry=false) at kernel/qwidget.cpp:8456
      #23 0x00007ffff7b2234f in QWidgetPrivate::show_helper (this=this@entry=0x566a30) at kernel/qwidget.cpp:8021
      #24 0x00007ffff7b252e3 in QWidgetPrivate::setVisible (this=0x566a30, visible=<optimized out>) at kernel/qwidget.cpp:8378
      #25 0x00000000004064ad in main ()

      Attachments

        1. main.cpp
          0.5 kB
        2. crash-qlistwidget.tar.bz2
          6 kB
        For Gerrit Dashboard: QTBUG-74665
        # Subject Branch Project Status CR V

        Activity

          People

            chehrlic Christian Ehrlicher
            montel Montel Laurent
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes