diff --git a/src/ringdht/ringaccount.cpp b/src/ringdht/ringaccount.cpp index abd4bea70b876138ac1ff7fbe4f7fd530bb1b274..ffa70f13eb03aa96d7226e3b2802e824afce3067 100644 --- a/src/ringdht/ringaccount.cpp +++ b/src/ringdht/ringaccount.cpp @@ -904,7 +904,13 @@ RingAccount::readArchive(const std::string& pwd) const std::vector<uint8_t> file = fileutils::loadFile(archivePath_); // Decrypt - file = dht::crypto::aesDecrypt(file, pwd); + try { + file = dht::crypto::aesDecrypt(file, pwd); + } + catch (const std::exception& e) { + RING_ERR("Error decrypting archive: %s", e.what()); + return RingAccount::ArchiveContent(); + } // Load return loadArchive(file);