From 3b610432ecdbc882d1abec87d31c1c3d6f02337d Mon Sep 17 00:00:00 2001 From: JustArchi Date: Fri, 5 Feb 2016 18:19:06 +0100 Subject: [PATCH] Decode game names, closes #99 --- ArchiSteamFarm/ArchiHandler.cs | 5 ++++- ArchiSteamFarm/Utilities.cs | 9 +++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/ArchiSteamFarm/ArchiHandler.cs b/ArchiSteamFarm/ArchiHandler.cs index ee3bd31e7..ba731398b 100644 --- a/ArchiSteamFarm/ArchiHandler.cs +++ b/ArchiSteamFarm/ArchiHandler.cs @@ -118,7 +118,10 @@ namespace ArchiSteamFarm { } foreach (KeyValue lineItem in ReceiptInfo["lineitems"].Children) { - Items.Add((uint) lineItem["PackageID"].AsUnsignedLong(), lineItem["ItemDescription"].AsString()); + uint appID = (uint) lineItem["PackageID"].AsUnsignedLong(); + string gameName = lineItem["ItemDescription"].AsString(); + gameName = Utilities.UrlDecode(gameName); // Apparently steam expects client to decode sent HTML + Items.Add(appID, gameName); } } } diff --git a/ArchiSteamFarm/Utilities.cs b/ArchiSteamFarm/Utilities.cs index d5c43cc4c..64b9710ad 100644 --- a/ArchiSteamFarm/Utilities.cs +++ b/ArchiSteamFarm/Utilities.cs @@ -22,6 +22,7 @@ */ +using System.Net; using System.Text.RegularExpressions; using System.Threading.Tasks; @@ -71,5 +72,13 @@ namespace ArchiSteamFarm { return count; } + + internal static string UrlDecode(string message) { + if (string.IsNullOrEmpty(message)) { + return null; + } + + return WebUtility.UrlDecode(message); + } } }