From f22d1ff2acd03f65eddc502dd94513a1a8228849 Mon Sep 17 00:00:00 2001 From: tobtoht Date: Sat, 5 Mar 2022 16:54:40 +0100 Subject: [PATCH] Tails: use feather_data instead of .feather --- src/utils/Utils.cpp | 15 +++++++++++++-- src/utils/config.cpp | 11 +++++++++-- 2 files changed, 22 insertions(+), 4 deletions(-) diff --git a/src/utils/Utils.cpp b/src/utils/Utils.cpp index 0240ac44..0a07e792 100644 --- a/src/utils/Utils.cpp +++ b/src/utils/Utils.cpp @@ -110,14 +110,25 @@ QString defaultWalletDir() { if (TailsOS::detect()) { QString path = []{ + // Starting in 1.1.0 the wallet and config directory were moved from ./.feather to ./feather_data + // A user might accidentally delete the folder containing the file hidden folder after moving the AppImage + // We return the old path if it still exists + QString appImagePath = qgetenv("APPIMAGE"); if (appImagePath.isEmpty()) { qDebug() << "Not an appimage, using currentPath()"; - return QDir::currentPath() + "/.feather/Monero/wallets"; + if (QDir(QDir::currentPath() + "/.feather").exists()) { + return QDir::currentPath() + "/.feather/Monero/wallets"; + } + return QDir::currentPath() + "/feather_data/wallets"; } QFileInfo appImageDir(appImagePath); - return appImageDir.absoluteDir().path() + "/.feather/Monero/wallets"; + QString absolutePath = appImageDir.absoluteDir().path(); + if (QDir(absolutePath + "/.feather").exists()) { + return absolutePath + "/.feather/Monero/wallets"; + } + return absolutePath + "/feather_data/wallets"; }(); return path; diff --git a/src/utils/config.cpp b/src/utils/config.cpp index 3026592f..1b8113fd 100644 --- a/src/utils/config.cpp +++ b/src/utils/config.cpp @@ -176,11 +176,18 @@ QDir Config::defaultConfigDir() { QString appImagePath = qgetenv("APPIMAGE"); if (appImagePath.isEmpty()) { qDebug() << "Not an appimage, using currentPath()"; - return QDir::currentPath() + "/.feather/.config/feather"; + if (QDir(QDir::currentPath() + "/.feather").exists()) { + return QDir::currentPath() + "/.feather/.config/feather"; + } + return QDir::currentPath() + "/feather_data"; } QFileInfo appImageDir(appImagePath); - return appImageDir.absoluteDir().path() + "/.feather/.config/feather"; + QString absolutePath = appImageDir.absoluteDir().path(); + if (QDir(absolutePath + "/.feather").exists()) { + return absolutePath + "/.feather/.config/feather"; + } + return absolutePath + "/feather_data"; }(); return QDir(path); -- 2.52.0