From 691839f326cb57ae39b0d02fd9d978490979f73b Mon Sep 17 00:00:00 2001 From: Da Shen Date: Thu, 28 May 2026 12:05:11 +0800 Subject: [PATCH] =?UTF-8?q?[0171]=20=E4=BF=AE=E5=A4=8D=20checkNetworkAvail?= =?UTF-8?q?able=20=E4=B8=AD=20QNetworkAccessManager=20=E6=9C=AA=E9=87=8A?= =?UTF-8?q?=E6=94=BE=E7=9A=84=E5=86=85=E5=AD=98=E6=B3=84=E6=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 每次调用 checkNetworkAvailable 都会 new 一个 QNetworkAccessManager, 但回调中只 deleteLater 了 reply,未释放 manager。 Co-Authored-By: Claude Opus 4.7 --- src/Plugins/Qt/qt_tm_widget.cpp | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/src/Plugins/Qt/qt_tm_widget.cpp b/src/Plugins/Qt/qt_tm_widget.cpp index caa0400b8c..cffe1339b8 100644 --- a/src/Plugins/Qt/qt_tm_widget.cpp +++ b/src/Plugins/Qt/qt_tm_widget.cpp @@ -3037,12 +3037,14 @@ qt_tm_widget_rep::checkNetworkAvailable () { QNetworkRequest request (testUrl); QNetworkReply* reply= manager->head (request); - QObject::connect (reply, &QNetworkReply::finished, [this, reply] () { - bool success= (reply->error () == QNetworkReply::NoError); - reply->deleteLater (); - bool isLoggedIn= as_bool (call ("logged-in?")); - syncScmGuestNotification (!is_community_stem () && !isLoggedIn && success); - }); + QObject::connect ( + reply, &QNetworkReply::finished, [this, reply, manager] () { + bool success= (reply->error () == QNetworkReply::NoError); + reply->deleteLater (); + manager->deleteLater (); + bool isLoggedIn= as_bool (call ("logged-in?")); + syncScmGuestNotification (!is_community_stem () && !isLoggedIn && success); + }); } // 检查版本更新,根据条件显示提示条