diff --git a/src/core/hle/service/am/applets/web_browser.cpp b/src/core/hle/service/am/applets/web_browser.cpp
index 58efebf06ae0fbc7413c272b04aa8f7dfac71698..3c3af476c4e4d54be583c3a0383cb8286a41e6d7 100644
--- a/src/core/hle/service/am/applets/web_browser.cpp
+++ b/src/core/hle/service/am/applets/web_browser.cpp
@@ -285,7 +285,9 @@ void WebBrowser::Finalize() {
     broker.PushNormalDataFromApplet(IStorage{data});
     broker.SignalStateChanged();
 
-    FileUtil::DeleteDirRecursively(temporary_dir);
+    if (!temporary_dir.empty() && FileUtil::IsDirectory(temporary_dir)) {
+        FileUtil::DeleteDirRecursively(temporary_dir);
+    }
 }
 
 void WebBrowser::InitializeInternal() {