OSDN Git Service

mark the warning case in QSessionManager constructor as unlikely
authorIvailo Monev <xakepa10@gmail.com>
Wed, 28 Sep 2022 02:22:58 +0000 (02:22 +0000)
committerIvailo Monev <xakepa10@gmail.com>
Wed, 28 Sep 2022 02:22:58 +0000 (02:22 +0000)
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
src/gui/kernel/qapplication_x11.cpp

index dbd21a3..10acbb4 100644 (file)
@@ -3726,8 +3726,9 @@ QSessionManager::QSessionManager(QApplication * app, QString &id, QString& key)
     cb.shutdown_cancelled.client_data = (SmPointer) d;
 
     // avoid showing a warning message below
-    if (qgetenv("SESSION_MANAGER").isEmpty())
+    if (qgetenv("SESSION_MANAGER").isEmpty()) {
         return;
+    }
 
     smcConnection = SmcOpenConnection(0, 0, 1, 0,
                                        SmcSaveYourselfProcMask |
@@ -3742,11 +3743,10 @@ QSessionManager::QSessionManager(QApplication * app, QString &id, QString& key)
     id = QString::fromLatin1(myId);
     ::free(myId); // it was allocated by C
 
-    QString error = QString::fromLocal8Bit(cerror);
-    if (!smcConnection) {
+    if (Q_UNLIKELY(!smcConnection)) {
+        const QString error = QString::fromLocal8Bit(cerror);
         qWarning("Qt: Session management error: %s", qPrintable(error));
-    }
-    else {
+    } else {
         sm_receiver = new QSmSocketReceiver(IceConnectionNumber(SmcGetIceConnection(smcConnection)));
     }
 }