Răsfoiți Sursa

Make sure to reload keys after Migration

This fix keys not being loaded on the first run right after migration.
Thog 6 ani în urmă
părinte
comite
01daefe38d
2 a modificat fișierele cu 5 adăugiri și 2 ștergeri
  1. 1 1
      Ryujinx/Program.cs
  2. 4 1
      Ryujinx/Ui/Migration.cs

+ 1 - 1
Ryujinx/Program.cs

@@ -50,7 +50,7 @@ namespace Ryujinx
 
             string appDataPath     = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "Ryujinx", "system", "prod.keys");
             string userProfilePath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.UserProfile), ".switch", "prod.keys");
-            if (!File.Exists(appDataPath) && !File.Exists(userProfilePath))
+            if (!File.Exists(appDataPath) && !File.Exists(userProfilePath) && !Migration.IsMigrationNeeded())
             {
                 GtkDialog.CreateErrorDialog("Key file was not found. Please refer to `KEYS.md` for more info");
             }

+ 4 - 1
Ryujinx/Ui/Migration.cs

@@ -64,6 +64,9 @@ namespace Ryujinx.Ui
 
                 dialogSuccess.Run();
 
+                // Reload key set after migration to be sure to catch the keys in the system directory.
+                device.System.LoadKeySet();
+
                 return true;
             }
             catch (HorizonResultException ex)
@@ -171,7 +174,7 @@ namespace Ryujinx.Ui
             }
         }
 
-        private static bool IsMigrationNeeded()
+        public static bool IsMigrationNeeded()
         {
             string appDataPath = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData);