summaryrefslogtreecommitdiffstats
path: root/src/core/hle/service/am
diff options
context:
space:
mode:
authorZach Hilman <zachhilman@gmail.com>2019-06-07 00:40:59 +0200
committerZach Hilman <zachhilman@gmail.com>2019-06-25 02:05:11 +0200
commit01ff38cca80c5cf7e64494b129dde8d7c8ebbee5 (patch)
tree1bcb28a01c067abe641fe167e99416217fba0f5c /src/core/hle/service/am
parentweb_browser: Only delete temporary directory if it was created (diff)
downloadyuzu-01ff38cca80c5cf7e64494b129dde8d7c8ebbee5.tar
yuzu-01ff38cca80c5cf7e64494b129dde8d7c8ebbee5.tar.gz
yuzu-01ff38cca80c5cf7e64494b129dde8d7c8ebbee5.tar.bz2
yuzu-01ff38cca80c5cf7e64494b129dde8d7c8ebbee5.tar.lz
yuzu-01ff38cca80c5cf7e64494b129dde8d7c8ebbee5.tar.xz
yuzu-01ff38cca80c5cf7e64494b129dde8d7c8ebbee5.tar.zst
yuzu-01ff38cca80c5cf7e64494b129dde8d7c8ebbee5.zip
Diffstat (limited to 'src/core/hle/service/am')
-rw-r--r--src/core/hle/service/am/applets/web_browser.cpp30
-rw-r--r--src/core/hle/service/am/applets/web_browser.h2
2 files changed, 16 insertions, 16 deletions
diff --git a/src/core/hle/service/am/applets/web_browser.cpp b/src/core/hle/service/am/applets/web_browser.cpp
index 3c3af476c..3aa8f2468 100644
--- a/src/core/hle/service/am/applets/web_browser.cpp
+++ b/src/core/hle/service/am/applets/web_browser.cpp
@@ -103,6 +103,17 @@ enum class ShimKind : u32 {
Lobby = 7,
};
+enum class ShopWebTarget {
+ ApplicationInfo,
+ AddOnContentList,
+ SubscriptionList,
+ ConsumableItemList,
+ Home,
+ Settings,
+};
+
+namespace {
+
constexpr std::size_t SHIM_KIND_COUNT = 0x8;
struct WebArgHeader {
@@ -148,31 +159,20 @@ enum class OfflineWebSource : u32 {
SystemDataPage = 0x3,
};
-enum class ShopWebTarget {
- ApplicationInfo,
- AddOnContentList,
- SubscriptionList,
- ConsumableItemList,
- Home,
- Settings,
-};
-
-namespace {
-
std::map<WebArgTLVType, std::vector<u8>> GetWebArguments(const std::vector<u8>& arg) {
- WebArgHeader header{};
if (arg.size() < sizeof(WebArgHeader))
return {};
+ WebArgHeader header{};
std::memcpy(&header, arg.data(), sizeof(WebArgHeader));
std::map<WebArgTLVType, std::vector<u8>> out;
u64 offset = sizeof(WebArgHeader);
for (std::size_t i = 0; i < header.count; ++i) {
- WebArgTLV tlv{};
if (arg.size() < (offset + sizeof(WebArgTLV)))
return out;
+ WebArgTLV tlv{};
std::memcpy(&tlv, arg.data() + offset, sizeof(WebArgTLV));
offset += sizeof(WebArgTLV);
@@ -392,7 +392,7 @@ void WebBrowser::InitializeShop() {
return;
}
- const std::map<std::string, ShopWebTarget> target_map{
+ const std::map<std::string, ShopWebTarget, std::less<>> target_map{
{"product_detail", ShopWebTarget::ApplicationInfo},
{"aocs", ShopWebTarget::AddOnContentList},
{"subscriptions", ShopWebTarget::SubscriptionList},
@@ -480,7 +480,7 @@ void WebBrowser::InitializeOffline() {
std::string path_additional_directory;
if (source == OfflineWebSource::OfflineHtmlPage) {
- path_additional_directory = std::string(DIR_SEP) + "html-document";
+ path_additional_directory = std::string(DIR_SEP).append("html-document");
}
filename =
diff --git a/src/core/hle/service/am/applets/web_browser.h b/src/core/hle/service/am/applets/web_browser.h
index 42f0a3e8a..9667dcf6f 100644
--- a/src/core/hle/service/am/applets/web_browser.h
+++ b/src/core/hle/service/am/applets/web_browser.h
@@ -67,7 +67,7 @@ private:
std::string filename;
ShopWebTarget shop_web_target;
- std::map<std::string, std::string> shop_query;
+ std::map<std::string, std::string, std::less<>> shop_query;
std::optional<u64> title_id = 0;
std::optional<u128> user_id;
std::optional<bool> shop_full_display;