From 995908aa981446e079fd98395ceba6890981bf69 Mon Sep 17 00:00:00 2001 From: Wang Yu Date: Wed, 30 Jul 2025 15:18:47 +0800 Subject: [PATCH] fix: add null check for QNetworkInformation instance - Added null pointer validation before accessing QNetworkInformation::instance() in networkIsOnline() - Prevents potential crash when network information service is unavailable - Updated return logic to handle disconnected state properly Log: add null check for QNetworkInformation instance pms: BUG-325409 --- deepin-devicemanager/src/Page/PageDriverManager.cpp | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/deepin-devicemanager/src/Page/PageDriverManager.cpp b/deepin-devicemanager/src/Page/PageDriverManager.cpp index 6c7f8a77..26452e07 100644 --- a/deepin-devicemanager/src/Page/PageDriverManager.cpp +++ b/deepin-devicemanager/src/Page/PageDriverManager.cpp @@ -1060,9 +1060,13 @@ bool PageDriverManager::networkIsOnline() qCDebug(appLog) << "Network is" << (isOnline ? "online" : "offline"); return isOnline; #else - auto interfaces = QNetworkInformation::instance()->reachability(); - qCDebug(appLog) << "Network reachability:" << interfaces; - return interfaces == QNetworkInformation::Reachability::Disconnected; + bool networkFlag = false; + if (QNetworkInformation::instance()) { + auto interfaces = QNetworkInformation::instance()->reachability(); + qCDebug(appLog) << "Network reachability:" << interfaces; + networkFlag = (interfaces == QNetworkInformation::Reachability::Disconnected); + } + return networkFlag; #endif }