From dee1be0aae30f6d33ad8a7ee51341d3190ff84fd Mon Sep 17 00:00:00 2001 From: Marc Mutz Date: Tue, 9 Jul 2024 16:08:50 +0200 Subject: [PATCH] De-inline ~QHttpNetworkHeader() ... and adapt the whole hierarchy to idiomatic dtors (add override, remove virtual). Fixes -Wweak-vtable and all the problems that violating it brings. Pick-to: 6.8 Task-number: QTBUG-45582 Change-Id: I180c774a135b1fbf1a7e942c91af25710a4bf5fd Reviewed-by: Ivan Solovev --- src/network/access/qhttpnetworkheader.cpp | 3 +++ src/network/access/qhttpnetworkheader_p.h | 2 +- src/network/access/qhttpnetworkreply_p.h | 2 +- src/network/access/qhttpnetworkrequest_p.h | 2 +- 4 files changed, 6 insertions(+), 3 deletions(-) diff --git a/src/network/access/qhttpnetworkheader.cpp b/src/network/access/qhttpnetworkheader.cpp index 7f9c94dc9c7..4c66351122a 100644 --- a/src/network/access/qhttpnetworkheader.cpp +++ b/src/network/access/qhttpnetworkheader.cpp @@ -7,6 +7,9 @@ QT_BEGIN_NAMESPACE +QHttpNetworkHeader::~QHttpNetworkHeader() + = default; + QHttpNetworkHeaderPrivate::QHttpNetworkHeaderPrivate(const QUrl &newUrl) :url(newUrl) { diff --git a/src/network/access/qhttpnetworkheader_p.h b/src/network/access/qhttpnetworkheader_p.h index afbc6cb6fe9..1745e572d86 100644 --- a/src/network/access/qhttpnetworkheader_p.h +++ b/src/network/access/qhttpnetworkheader_p.h @@ -31,7 +31,7 @@ QT_BEGIN_NAMESPACE class Q_AUTOTEST_EXPORT QHttpNetworkHeader { public: - virtual ~QHttpNetworkHeader() {} + virtual ~QHttpNetworkHeader(); virtual QUrl url() const = 0; virtual void setUrl(const QUrl &url) = 0; diff --git a/src/network/access/qhttpnetworkreply_p.h b/src/network/access/qhttpnetworkreply_p.h index caec82bd7ef..2ffc1b8389d 100644 --- a/src/network/access/qhttpnetworkreply_p.h +++ b/src/network/access/qhttpnetworkreply_p.h @@ -60,7 +60,7 @@ class Q_NETWORK_EXPORT QHttpNetworkReply : public QObject, public QHttpNetworkHe public: explicit QHttpNetworkReply(const QUrl &url = QUrl(), QObject *parent = nullptr); - virtual ~QHttpNetworkReply(); + ~QHttpNetworkReply() override; QUrl url() const override; void setUrl(const QUrl &url) override; diff --git a/src/network/access/qhttpnetworkrequest_p.h b/src/network/access/qhttpnetworkrequest_p.h index aac4ebcfb67..0b8941c8f32 100644 --- a/src/network/access/qhttpnetworkrequest_p.h +++ b/src/network/access/qhttpnetworkrequest_p.h @@ -52,7 +52,7 @@ public: explicit QHttpNetworkRequest(const QUrl &url = QUrl(), Operation operation = Get, Priority priority = NormalPriority); QHttpNetworkRequest(const QHttpNetworkRequest &other); - virtual ~QHttpNetworkRequest(); + ~QHttpNetworkRequest() override; QHttpNetworkRequest &operator=(const QHttpNetworkRequest &other); bool operator==(const QHttpNetworkRequest &other) const;