From dd6b284ed8da6b10875e3de6d6d87c56f66add15 Mon Sep 17 00:00:00 2001 From: kaso17 Date: Mon, 23 Jan 2017 18:14:20 +0100 Subject: [PATCH] Cardigann: use correct encoding for query strings --- src/Jackett/Indexers/CardigannIndexer.cs | 2 +- src/Jackett/Utils/StringUtil.cs | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/Jackett/Indexers/CardigannIndexer.cs b/src/Jackett/Indexers/CardigannIndexer.cs index 85c2b768b..0ee0e97f8 100644 --- a/src/Jackett/Indexers/CardigannIndexer.cs +++ b/src/Jackett/Indexers/CardigannIndexer.cs @@ -934,7 +934,7 @@ namespace Jackett.Indexers } } if (queryCollection.Count > 0) - searchUrl += "&" + queryCollection.GetQueryString(); + searchUrl += "&" + queryCollection.GetQueryString(Encoding); // in case no args are added remove ? again (needed for KAT) searchUrl = searchUrl.TrimEnd('?'); diff --git a/src/Jackett/Utils/StringUtil.cs b/src/Jackett/Utils/StringUtil.cs index 2e6765c3f..0287b5f6a 100644 --- a/src/Jackett/Utils/StringUtil.cs +++ b/src/Jackett/Utils/StringUtil.cs @@ -69,9 +69,11 @@ namespace Jackett.Utils return String.Join("\n", fields); } - public static string GetQueryString(this NameValueCollection collection) + public static string GetQueryString(this NameValueCollection collection, Encoding encoding = null) { - return string.Join("&", collection.AllKeys.Select(a => a + "=" + HttpUtility.UrlEncode(collection[a]))); + if (encoding == null) + encoding = Encoding.UTF8; + return string.Join("&", collection.AllKeys.Select(a => a + "=" + HttpUtility.UrlEncode(collection[a], encoding))); } public static string GenerateRandom(int length)