]> Nutra Git (v1) - gamesguru/feather.git/commitdiff
Tails: use feather_data instead of .feather
authortobtoht <thotbot@protonmail.com>
Sat, 5 Mar 2022 15:54:40 +0000 (16:54 +0100)
committertobtoht <thotbot@protonmail.com>
Sat, 5 Mar 2022 16:03:42 +0000 (17:03 +0100)
src/utils/Utils.cpp
src/utils/config.cpp

index 0240ac448e8b5174e98787e41613ef8c490cd6c9..0a07e79280dc1a91e347ba8f55d592431d190f68 100644 (file)
@@ -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;
index 3026592fea1373aa4de97df7c306b509bab409ef..1b8113fdedbc236fbbf914a2a55e183fc519dcba 100644 (file)
@@ -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);