From d317cfd639bde1e22970799181adec5f37573995 Mon Sep 17 00:00:00 2001
From: Alex Barney <thealexbarney@gmail.com>
Date: Wed, 2 Feb 2022 14:49:49 -0700
Subject: Try to ensure save data always has a valid owner ID (#3057)

- Run the extra data fix in FixExtraData on non-system saves that have no owner ID.
- Set the owner ID in the dummy application control property if an application doesn't have a proper one available.
---
 Ryujinx.HLE/FileSystem/VirtualFileSystem.cs | 4 +++-
 1 file changed, 3 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 f2d20cb1..9359b03c 100644
--- a/Ryujinx.HLE/FileSystem/VirtualFileSystem.cs
+++ b/Ryujinx.HLE/FileSystem/VirtualFileSystem.cs
@@ -505,7 +505,9 @@ namespace Ryujinx.HLE.FileSystem
 
             bool canFixBySaveDataId = extraData.Attribute.StaticSaveDataId == 0 && info.StaticSaveDataId != 0;
 
-            if (!canFixByProgramId && !canFixBySaveDataId)
+            bool hasEmptyOwnerId = extraData.OwnerId == 0 && info.Type != LibHac.Fs.SaveDataType.System;
+
+            if (!canFixByProgramId && !canFixBySaveDataId && !hasEmptyOwnerId)
             {
                 wasFixNeeded = false;
                 return Result.Success;
-- 
cgit v1.2.3-70-g09d2