Only show successful debug archive creation dialog if it has indeed been successful
authorClaudio Cambra <claudio.cambra@nextcloud.com>
Mon, 1 Apr 2024 10:00:27 +0000 (18:00 +0800)
committerCamila Ayres <hello@camilasan.com>
Tue, 23 Apr 2024 18:20:49 +0000 (20:20 +0200)
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
src/gui/generalsettings.cpp

index 4d86c7c06d2601d1be6dbd1f4c9b6d830441daa5..2112d386d2b2d7b5675b8e0282d1006eb8b62044 100644 (file)
@@ -107,7 +107,7 @@ QVector<ZipEntry> createDebugArchiveFileList()
     return list;
 }
 
-void createDebugArchive(const QString &filename)
+bool createDebugArchive(const QString &filename)
 {
     const auto fileInfo = QFileInfo(filename);
     const auto dirInfo = QFileInfo(fileInfo.dir().absolutePath());
@@ -117,7 +117,7 @@ void createDebugArchive(const QString &filename)
             QObject::tr("Failed to create debug archive"),
             QObject::tr("Could not create debug archive in selected location!")
         );
-        return;
+        return false;
     }
 
     const auto entries = createDebugArchiveFileList();
@@ -138,7 +138,9 @@ void createDebugArchive(const QString &filename)
     zip.prepareWriting("__nextcloud_client_buildinfo.txt", {}, {}, buildInfo.size());
     zip.writeData(buildInfo, buildInfo.size());
     zip.finishWriting(buildInfo.size());
+    return true;
 }
+
 }
 
 namespace OCC {
@@ -520,8 +522,13 @@ void GeneralSettings::slotCreateDebugArchive()
         return;
     }
 
-    createDebugArchive(filename);
-    QMessageBox::information(this, tr("Debug Archive Created"), tr("Debug archive is created at %1").arg(filename));
+    if (createDebugArchive(filename)) {
+        QMessageBox::information(
+            this,
+            tr("Debug Archive Created"),
+            tr("Debug archive is created at %1").arg(filename)
+        );
+    }
 }
 
 void GeneralSettings::slotShowLegalNotice()