diff options
| author | 2021-07-14 03:18:19 -0400 | |
|---|---|---|
| committer | 2021-07-15 00:31:46 -0400 | |
| commit | 0d88a2bc054cfe969673a9d9587c96b1b5c6cbf4 (patch) | |
| tree | e9ef5810f79cda37bea3ae6b6772595b1413702a | |
| parent | Merge pull request #6639 from Morph1984/optimize-linker (diff) | |
| download | yuzu-0d88a2bc054cfe969673a9d9587c96b1b5c6cbf4.tar.gz yuzu-0d88a2bc054cfe969673a9d9587c96b1b5c6cbf4.tar.xz yuzu-0d88a2bc054cfe969673a9d9587c96b1b5c6cbf4.zip | |
applets/web: Resolve Nintendo CDN URLs
This fixes the hint videos in New Super Mario Bros. U Deluxe
Diffstat (limited to '')
| -rw-r--r-- | src/core/hle/service/am/applets/applet_web_browser.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
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 f96f0fee3..35f194961 100644 --- a/src/core/hle/service/am/applets/applet_web_browser.cpp +++ b/src/core/hle/service/am/applets/applet_web_browser.cpp | |||
| @@ -58,6 +58,16 @@ std::string GetMainURL(const std::string& url) { | |||
| 58 | return url.substr(0, index); | 58 | return url.substr(0, index); |
| 59 | } | 59 | } |
| 60 | 60 | ||
| 61 | std::string ResolveURL(const std::string& url) { | ||
| 62 | const auto index = url.find_first_of('%'); | ||
| 63 | |||
| 64 | if (index == std::string::npos) { | ||
| 65 | return url; | ||
| 66 | } | ||
| 67 | |||
| 68 | return url.substr(0, index) + "lp1" + url.substr(index + 1); | ||
| 69 | } | ||
| 70 | |||
| 61 | WebArgInputTLVMap ReadWebArgs(const std::vector<u8>& web_arg, WebArgHeader& web_arg_header) { | 71 | WebArgInputTLVMap ReadWebArgs(const std::vector<u8>& web_arg, WebArgHeader& web_arg_header) { |
| 62 | std::memcpy(&web_arg_header, web_arg.data(), sizeof(WebArgHeader)); | 72 | std::memcpy(&web_arg_header, web_arg.data(), sizeof(WebArgHeader)); |
| 63 | 73 | ||
| @@ -407,6 +417,9 @@ void WebBrowser::InitializeShare() {} | |||
| 407 | 417 | ||
| 408 | void WebBrowser::InitializeWeb() { | 418 | void WebBrowser::InitializeWeb() { |
| 409 | external_url = ParseStringValue(GetInputTLVData(WebArgInputTLVType::InitialURL).value()); | 419 | external_url = ParseStringValue(GetInputTLVData(WebArgInputTLVType::InitialURL).value()); |
| 420 | |||
| 421 | // Resolve Nintendo CDN URLs. | ||
| 422 | external_url = ResolveURL(external_url); | ||
| 410 | } | 423 | } |
| 411 | 424 | ||
| 412 | void WebBrowser::InitializeWifi() {} | 425 | void WebBrowser::InitializeWifi() {} |