From 1d8da1833429acd4a9cbea7597c0699c2e3c80bf Mon Sep 17 00:00:00 2001 From: Thog <me@thog.eu> Date: Fri, 24 Jan 2020 17:01:21 +0100 Subject: Make VirtualFileSystem only instanciable once (#901) This fix a regression caused by #888 on temporary saves for SNES Online. (and probably other games) --- Ryujinx.HLE/FileSystem/VirtualFileSystem.cs | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) (limited to 'Ryujinx.HLE/FileSystem/VirtualFileSystem.cs') diff --git a/Ryujinx.HLE/FileSystem/VirtualFileSystem.cs b/Ryujinx.HLE/FileSystem/VirtualFileSystem.cs index 070ec3bc..884f4197 100644 --- a/Ryujinx.HLE/FileSystem/VirtualFileSystem.cs +++ b/Ryujinx.HLE/FileSystem/VirtualFileSystem.cs @@ -20,12 +20,14 @@ namespace Ryujinx.HLE.FileSystem public static string SystemNandPath = Path.Combine(NandPath, "system"); public static string UserNandPath = Path.Combine(NandPath, "user"); + private static bool _isInitialized = false; + public Keyset KeySet { get; private set; } public FileSystemServer FsServer { get; private set; } public FileSystemClient FsClient { get; private set; } public EmulatedGameCard GameCard { get; private set; } - public VirtualFileSystem() + private VirtualFileSystem() { Reload(); } @@ -272,5 +274,17 @@ namespace Ryujinx.HLE.FileSystem Unload(); } } + + public static VirtualFileSystem CreateInstance() + { + if (_isInitialized) + { + throw new InvalidOperationException($"VirtualFileSystem can only be instanciated once!"); + } + + _isInitialized = true; + + return new VirtualFileSystem(); + } } } \ No newline at end of file -- cgit v1.2.3-70-g09d2