# HG changeset patch # User Matti Hamalainen # Date 1503587171 -10800 # Node ID 75a4faa219a965c5ce6d18881e12ea6873047811 # Parent 3b904b49ce57dbff4bea115d789d859b65ae6578 Improve backup process error handling. diff -r 3b904b49ce57 -r 75a4faa219a9 src/main.cpp --- a/src/main.cpp Thu Aug 24 16:31:19 2017 +0300 +++ b/src/main.cpp Thu Aug 24 18:06:11 2017 +0300 @@ -523,6 +523,12 @@ this, SLOT(backupProgress(qint64, qint64))); + connect( + backupReply, + SIGNAL(error(QNetworkReply::NetworkError)), + this, + SLOT(backupError(QNetworkReply::NetworkError))); + // Create progress dialog backupDialog = new QProgressDialog( tr("Varmuuskopioidaan tietokantaa ..."), @@ -565,9 +571,33 @@ { if (backupReply) { - slLog("PAF", QString::fromUtf8(backupReply->readAll())); + QVariant status = backupReply->attribute(QNetworkRequest::HttpStatusCodeAttribute); + if (status.isValid()) + { + int code = status.toInt(); + switch (code) + { + case 200: + slLog("INFO", "Backup successful."); + break; + + case 403: + slLog("ERROR", "Backup server authentication failed. Wrong secret or other invalid settings."); + break; + + default: + slLog("ERROR", + QStringLiteral("Backup server responded with error:\n")+ + QString::fromUtf8(backupReply->readAll())); + break; + } + } } - slLog("INFO", "Backup finished."); + else + { + slLog("WARNING", "Backup finished prematurely (failed)."); + } + backupDialog->close(); }