diff --git a/src/SharpEmu.Core/Runtime/SharpEmuRuntime.cs b/src/SharpEmu.Core/Runtime/SharpEmuRuntime.cs index 2cfc051..f6d0c67 100644 --- a/src/SharpEmu.Core/Runtime/SharpEmuRuntime.cs +++ b/src/SharpEmu.Core/Runtime/SharpEmuRuntime.cs @@ -159,6 +159,7 @@ public sealed class SharpEmuRuntime : ISharpEmuRuntime FiberExports.ResetRuntimeState(); Http2Exports.ResetRuntimeState(); NpAuthExports.ResetRuntimeState(); + NpUniversalDataSystemExports.ResetRuntimeState(); KernelModuleRegistry.Reset(); var image = LoadImage(normalizedEbootPath); VideoOutExports.ConfigureApplicationInfo(image.Title, image.TitleId, image.Version); diff --git a/src/SharpEmu.Libs/Np/NpUniversalDataSystemExports.cs b/src/SharpEmu.Libs/Np/NpUniversalDataSystemExports.cs index 658a424..57951f3 100644 --- a/src/SharpEmu.Libs/Np/NpUniversalDataSystemExports.cs +++ b/src/SharpEmu.Libs/Np/NpUniversalDataSystemExports.cs @@ -11,6 +11,8 @@ public static class NpUniversalDataSystemExports private const int ErrorInvalidArgument = unchecked((int)0x80553102); private const int MaximumGuestStringBytes = 64 * 1024; + public static void ResetRuntimeState() => NpUniversalDataSystemState.ResetRuntimeState(); + [SysAbiExport( Nid = "sjaobBgqeB4", ExportName = "sceNpUniversalDataSystemInitialize", diff --git a/src/SharpEmu.Libs/Np/NpUniversalDataSystemState.cs b/src/SharpEmu.Libs/Np/NpUniversalDataSystemState.cs index ef02cc3..48577ce 100644 --- a/src/SharpEmu.Libs/Np/NpUniversalDataSystemState.cs +++ b/src/SharpEmu.Libs/Np/NpUniversalDataSystemState.cs @@ -484,7 +484,7 @@ internal static class NpUniversalDataSystemState } } - internal static void ResetForTests() + internal static void ResetRuntimeState() { lock (Gate) { @@ -492,6 +492,8 @@ internal static class NpUniversalDataSystemState } } + internal static void ResetForTests() => ResetRuntimeState(); + private static ulong CreateObjectLocked(UdsObjectNode node) { var handle = ObjectHandleBase | ++_nextObject;