From 0ee2185c59aefdba4fc8c9393fbb3b0d168eb004 Mon Sep 17 00:00:00 2001 From: Feng Chen Date: Thu, 30 Sep 2021 15:47:28 +0800 Subject: applets/web: Fallback to loader to get the manual romfs if none is found --- src/core/hle/service/am/applets/applet_web_browser.cpp | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'src') diff --git a/src/core/hle/service/am/applets/applet_web_browser.cpp b/src/core/hle/service/am/applets/applet_web_browser.cpp index 35f194961..927eeefff 100644 --- a/src/core/hle/service/am/applets/applet_web_browser.cpp +++ b/src/core/hle/service/am/applets/applet_web_browser.cpp @@ -24,6 +24,7 @@ #include "core/hle/service/am/applets/applet_web_browser.h" #include "core/hle/service/filesystem/filesystem.h" #include "core/hle/service/ns/pl_u.h" +#include "core/loader/loader.h" namespace Service::AM::Applets { @@ -122,6 +123,15 @@ FileSys::VirtualFile GetOfflineRomFS(Core::System& system, u64 title_id, const auto nca = system.GetContentProvider().GetEntry(title_id, nca_type); if (nca == nullptr) { + if (nca_type == FileSys::ContentRecordType::HtmlDocument) { + LOG_WARNING(Service_AM, "Falling back to AppLoader to get the RomFS."); + FileSys::VirtualFile romfs; + system.GetAppLoader().ReadManualRomFS(romfs); + if (romfs != nullptr) { + return romfs; + } + } + LOG_ERROR(Service_AM, "NCA of type={} with title_id={:016X} is not found in the ContentProvider!", nca_type, title_id); -- cgit v1.2.3