diff options
author | Marc Mutz <marc.mutz@kdab.com> | 2016-07-28 19:51:53 +0300 |
---|---|---|
committer | Marc Mutz <marc.mutz@kdab.com> | 2016-08-01 16:07:50 +0000 |
commit | 5dc83974f7e6f72d715c4c940ca57741a550aa1c (patch) | |
tree | 97c488d803b5543d74a4629c6620337278ee52d5 /src/widgets/itemviews/qtreeview.h | |
parent | 08f38d22149f062006316997a04fee57c33bc577 (diff) |
tst_QTreeView: Fix UB (invalid downcast, member call)
As reported by UBSan:
tst_qtreeview.cpp:2187:36: runtime error: downcast of address 0x7ffc15749f20 which does not point to an object of type 'PublicView'
0x7ffc15749f20: note: object is of type 'QTreeView'
Fix by making the test a friend of QTreeView (and, for
Clang, of QAbstractItemView) instead.
Change-Id: I5b748696ab441a91058f4d45a18bd5ed75a6e560
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
Diffstat (limited to 'src/widgets/itemviews/qtreeview.h')
-rw-r--r-- | src/widgets/itemviews/qtreeview.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/widgets/itemviews/qtreeview.h b/src/widgets/itemviews/qtreeview.h index 546cc488cb..9257bb66fa 100644 --- a/src/widgets/itemviews/qtreeview.h +++ b/src/widgets/itemviews/qtreeview.h @@ -36,6 +36,8 @@ #include <QtWidgets/qabstractitemview.h> +class tst_QTreeView; + QT_BEGIN_NAMESPACE @@ -213,6 +215,7 @@ protected: void currentChanged(const QModelIndex ¤t, const QModelIndex &previous) Q_DECL_OVERRIDE; private: + friend class ::tst_QTreeView; friend class QAccessibleTable; friend class QAccessibleTree; friend class QAccessibleTableCell; |