QHostInfo: de-inline -Result and -Runnable dtors

These classes are not exported, so we don't run into duplicate vtables
here, but the header is included in a few TUs other than qhostinfo.cpp
(all, when building with PCH), so make sure we compile dtors only once.

Pick-to: 6.6 6.5
Change-Id: I51f6a6d27fc084ad469f82dc7aef3327bdd9a906
Reviewed-by: Ivan Solovev <ivan.solovev@qt.io>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
This commit is contained in:
Marc Mutz 2023-08-02 19:30:14 +02:00
parent 32cfe18120
commit a2c8524ad7
2 changed files with 10 additions and 0 deletions

View File

@ -72,6 +72,9 @@ Q_APPLICATION_STATIC(QHostInfoLookupManager, theHostInfoLookupManager)
}
QHostInfoResult::~QHostInfoResult()
= default;
/*
The calling thread is likely the one that executes the lookup via
QHostInfoRunnable. Unless we operate with a queued connection already,
@ -818,6 +821,9 @@ QHostInfoRunnable::QHostInfoRunnable(const QString &hn, int i, const QObject *re
setAutoDelete(true);
}
QHostInfoRunnable::~QHostInfoRunnable()
= default;
// the QHostInfoLookupManager will at some point call this via a QThreadPool
void QHostInfoRunnable::run()
{

View File

@ -51,6 +51,8 @@ public:
moveToThread(receiver->thread());
}
~QHostInfoResult() override;
void postResultsReady(const QHostInfo &info);
Q_SIGNALS:
@ -143,6 +145,8 @@ class QHostInfoRunnable : public QRunnable
public:
QHostInfoRunnable(const QString &hn, int i, const QObject *receiver,
QtPrivate::QSlotObjectBase *slotObj);
~QHostInfoRunnable() override;
void run() override;
QString toBeLookedUp;