diff options
author | Marc Mutz <marc.mutz@kdab.com> | 2016-10-02 19:53:14 +0200 |
---|---|---|
committer | Marc Mutz <marc.mutz@kdab.com> | 2016-10-02 18:31:46 +0000 |
commit | 84d8f07b6d3133dc10a83f0b64c39a5948334302 (patch) | |
tree | a933f40380d7d8e56fcd7914a6b8d0609ba702c0 /src/quicktemplates2/qquickpopup_p_p.h | |
parent | 4fb88d0f34e030223c75fc8903ef5d8325b649ed (diff) |
QQuickPopupPrivate: unbreak ubsan build
The tst_drawer test uses members of the class, but it was not (autotest-)
exported. That's no problem as long as the function called is inline, or
a data member is accessed, but in a UBSan build, the typeid of a poly-
morphic class is checked on each access, so the typeinfo object must be
exported.
Fix by autotest-exporting the class and defining the dtor out-of-line to
pin the typeinfo and vtabe to a single TU.
Change-Id: I1524e63a330dbdb0ae1ceb60263b589734bfd3aa
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
Diffstat (limited to 'src/quicktemplates2/qquickpopup_p_p.h')
-rw-r--r-- | src/quicktemplates2/qquickpopup_p_p.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/quicktemplates2/qquickpopup_p_p.h b/src/quicktemplates2/qquickpopup_p_p.h index c9f5e264..c8c83ada 100644 --- a/src/quicktemplates2/qquickpopup_p_p.h +++ b/src/quicktemplates2/qquickpopup_p_p.h @@ -142,12 +142,13 @@ private: QQuickPopupPrivate *m_popup; }; -class QQuickPopupPrivate : public QObjectPrivate, public QQuickItemChangeListener +class Q_AUTOTEST_EXPORT QQuickPopupPrivate : public QObjectPrivate, public QQuickItemChangeListener { Q_DECLARE_PUBLIC(QQuickPopup) public: QQuickPopupPrivate(); + ~QQuickPopupPrivate(); static QQuickPopupPrivate *get(QQuickPopup *popup) { |