From cd0817bd116eea316f5f27cc887b53947b955184 Mon Sep 17 00:00:00 2001 From: ITotalJustice <47043333+ITotalJustice@users.noreply.github.com> Date: Tue, 3 Jun 2025 02:36:53 +0100 Subject: [PATCH] add explicit sleep in between batch delete calls in order to not pin core3. otherwise, core3 is pinned and button inputs (including the power button) become unresponsive. --- sphaira/source/ui/menus/appstore.cpp | 2 ++ sphaira/source/ui/menus/filebrowser.cpp | 2 ++ 2 files changed, 4 insertions(+) diff --git a/sphaira/source/ui/menus/appstore.cpp b/sphaira/source/ui/menus/appstore.cpp index c2b651f..d018b86 100644 --- a/sphaira/source/ui/menus/appstore.cpp +++ b/sphaira/source/ui/menus/appstore.cpp @@ -396,6 +396,7 @@ auto UninstallApp(ProgressBox* pbox, const Entry& entry) -> Result { log_write("failed to delete file: %s\n", safe_buf.s); } else { log_write("deleted file: %s\n", safe_buf.s); + svcSleepThread(1e+5); // todo: delete empty directories! // fs::delete_directory(safe_buf); } @@ -603,6 +604,7 @@ auto InstallApp(ProgressBox* pbox, const Entry& entry) -> Result { log_write("failed to delete: %s\n", safe_buf.s); } else { log_write("deleted file: %s\n", safe_buf.s); + svcSleepThread(1e+5); } } } diff --git a/sphaira/source/ui/menus/filebrowser.cpp b/sphaira/source/ui/menus/filebrowser.cpp index 90908b2..3253008 100644 --- a/sphaira/source/ui/menus/filebrowser.cpp +++ b/sphaira/source/ui/menus/filebrowser.cpp @@ -1425,9 +1425,11 @@ static Result DeleteAllCollections(ProgressBox* pbox, fs::Fs* fs, const Selected if ((mode & FsDirOpenMode_ReadDirs) && p.type == FsDirEntryType_Dir) { log_write("deleting dir: %s\n", full_path.s); R_TRY(fs->DeleteDirectory(full_path)); + svcSleepThread(1e+5); } else if ((mode & FsDirOpenMode_ReadFiles) && p.type == FsDirEntryType_File) { log_write("deleting file: %s\n", full_path.s); R_TRY(fs->DeleteFile(full_path)); + svcSleepThread(1e+5); } }