Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/desktop.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTomaz Canabrava <tcanabrava@kde.org>2018-03-25 23:31:49 +0300
committerTomaz Canabrava <tcanabrava@kde.org>2018-03-25 23:31:49 +0300
commit11684682e6c51723384f319158cc7f328658bbe3 (patch)
treeb211425bbf97426f2487ecc5dfd20fe26c86f515 /src/gui/accountsettings.cpp
parent96115be0c6c49c6a7ab9e1daaa74a038ee28e7d8 (diff)
Return empty metadata in case of error, Display error to the user.
Diffstat (limited to 'src/gui/accountsettings.cpp')
-rw-r--r--src/gui/accountsettings.cpp12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/gui/accountsettings.cpp b/src/gui/accountsettings.cpp
index 6046612f9..c47c01803 100644
--- a/src/gui/accountsettings.cpp
+++ b/src/gui/accountsettings.cpp
@@ -281,7 +281,17 @@ void AccountSettings::slotLockForEncryptionSuccess(const QByteArray& fileId, con
accountsState()->account()->e2e()->setTokenForFolder(fileId, token);
FolderMetadata emptyMetadata(accountsState()->account());
- auto storeMetadataJob = new StoreMetaDataApiJob(accountsState()->account(), fileId, emptyMetadata.encryptedMetadata());
+ auto encryptedMetadata = emptyMetadata.encryptedMetadata();
+ if (encryptedMetadata.isEmpty()) {
+ //TODO: Mark the folder as unencrypted as the metadata generation failed.
+ QMessageBox::warning(nullptr, "Warning",
+ "Could not generate the metadata for encryption, Unlocking the folder. \n"
+ "This can be an issue with your OpenSSL libraries, please note that OpenSSL 1.1 is \n"
+ "not compatible with Nextcloud yet."
+ );
+ return;
+ }
+ auto storeMetadataJob = new StoreMetaDataApiJob(accountsState()->account(), fileId, emptyMetadata.encryptedMetadata());
connect(storeMetadataJob, &StoreMetaDataApiJob::success,
this, &AccountSettings::slotUploadMetadataSuccess);
connect(storeMetadataJob, &StoreMetaDataApiJob::error,