QNetworkInformation: Private the destructor

It wasn't meant to be public.

Pick-to: 6.1 6.1.0
Change-Id: Ifa7fff48f82b96bdfa277677d3988dc8881b8c2a
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
This commit is contained in:
Mårten Nordheim 2021-04-12 16:38:19 +02:00
parent 6a17a8ba84
commit b1fe3e3d80
2 changed files with 9 additions and 3 deletions

View File

@ -56,6 +56,11 @@ QT_BEGIN_NAMESPACE
Q_DECLARE_LOGGING_CATEGORY(lcNetInfo)
Q_LOGGING_CATEGORY(lcNetInfo, "qt.network.info");
struct QNetworkInformationDeleter
{
void operator()(QNetworkInformation *information) { delete information; }
};
Q_GLOBAL_STATIC_WITH_ARGS(QFactoryLoader, loader,
(QNetworkInformationBackendFactory_iid,
QStringLiteral("/networkinformationbackends")))
@ -63,7 +68,7 @@ Q_GLOBAL_STATIC_WITH_ARGS(QFactoryLoader, loader,
struct QStaticNetworkInformationDataHolder
{
QMutex instanceMutex;
std::unique_ptr<QNetworkInformation> instanceHolder;
std::unique_ptr<QNetworkInformation, QNetworkInformationDeleter> instanceHolder;
QList<QNetworkInformationBackendFactory *> factories;
};
Q_GLOBAL_STATIC(QStaticNetworkInformationDataHolder, dataHolder);

View File

@ -49,6 +49,7 @@ QT_BEGIN_NAMESPACE
class QNetworkInformationBackend;
class QNetworkInformationPrivate;
struct QNetworkInformationDeleter;
class Q_NETWORK_EXPORT QNetworkInformation : public QObject
{
Q_OBJECT
@ -70,8 +71,6 @@ public:
Q_DECLARE_FLAGS(Features, Feature)
Q_FLAG(Features)
~QNetworkInformation() override;
Reachability reachability() const;
QString backendName() const;
@ -87,8 +86,10 @@ Q_SIGNALS:
void reachabilityChanged(Reachability newReachability);
private:
friend struct QNetworkInformationDeleter;
friend class QNetworkInformationPrivate;
QNetworkInformation(QNetworkInformationBackend *backend);
~QNetworkInformation() override;
Q_DISABLE_COPY_MOVE(QNetworkInformation)
};