From a32c34c78f881271d24eb4836c586dbdc0b439dc Mon Sep 17 00:00:00 2001 From: dogwatch Date: Tue, 16 Sep 2014 21:30:21 +0400 Subject: [PATCH 1/3] Update JavaScriptUtils.cs --- Src/Newtonsoft.Json/Utilities/JavaScriptUtils.cs | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/Src/Newtonsoft.Json/Utilities/JavaScriptUtils.cs b/Src/Newtonsoft.Json/Utilities/JavaScriptUtils.cs index ed618139..6a1e5f3c 100644 --- a/Src/Newtonsoft.Json/Utilities/JavaScriptUtils.cs +++ b/Src/Newtonsoft.Json/Utilities/JavaScriptUtils.cs @@ -224,13 +224,18 @@ namespace Newtonsoft.Json.Utilities } public static string ToEscapedJavaScriptString(string value, char delimiter, bool appendDelimiters) + { + return ToEscapedJavaScriptString(value, delimiter, appendDelimiters, StringEscapeHandling.Default); + } + + public static string ToEscapedJavaScriptString(string value, char delimiter, bool appendDelimiters, StringEscapeHandling stringEscapeHandling) { using (StringWriter w = StringUtils.CreateStringWriter(StringUtils.GetLength(value) ?? 16)) { char[] buffer = null; - WriteEscapedJavaScriptString(w, value, delimiter, appendDelimiters, (delimiter == '"') ? DoubleQuoteCharEscapeFlags : SingleQuoteCharEscapeFlags, StringEscapeHandling.Default, ref buffer); + WriteEscapedJavaScriptString(w, value, delimiter, appendDelimiters, (delimiter == '"') ? DoubleQuoteCharEscapeFlags : SingleQuoteCharEscapeFlags, stringEscapeHandling, ref buffer); return w.ToString(); } } } -} \ No newline at end of file +} From 040701ed68010229fe6066eec68e5b580d14cc78 Mon Sep 17 00:00:00 2001 From: dogwatch Date: Tue, 16 Sep 2014 21:37:39 +0400 Subject: [PATCH 2/3] Update JsonConvert.cs --- Src/Newtonsoft.Json/JsonConvert.cs | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/Src/Newtonsoft.Json/JsonConvert.cs b/Src/Newtonsoft.Json/JsonConvert.cs index 81d50a15..3d310c40 100644 --- a/Src/Newtonsoft.Json/JsonConvert.cs +++ b/Src/Newtonsoft.Json/JsonConvert.cs @@ -409,6 +409,11 @@ namespace Newtonsoft.Json return ToString(value, '"'); } + public static string ToString(string value, StringEscapeHandling stringEscapeHandling) + { + return ToString(value, '"', stringEscapeHandling); + } + /// /// Converts the to its JSON string representation. /// @@ -416,11 +421,16 @@ namespace Newtonsoft.Json /// The string delimiter character. /// A JSON string representation of the . public static string ToString(string value, char delimiter) + { + return ToString(value, delimiter, true, StringEscapeHandling.Default); + } + + public static string ToString(string value, char delimiter, StringEscapeHandling stringEscapeHandling) { if (delimiter != '"' && delimiter != '\'') throw new ArgumentException("Delimiter must be a single or double quote.", "delimiter"); - return JavaScriptUtils.ToEscapedJavaScriptString(value, delimiter, true); + return JavaScriptUtils.ToEscapedJavaScriptString(value, delimiter, true, stringEscapeHandling); } /// @@ -1113,4 +1123,4 @@ namespace Newtonsoft.Json } #endif } -} \ No newline at end of file +} From b7c92fdeb93f3d573f534b68fdf639367dfc4854 Mon Sep 17 00:00:00 2001 From: dogwatch Date: Tue, 16 Sep 2014 21:58:37 +0400 Subject: [PATCH 3/3] Update JsonConvert.cs --- Src/Newtonsoft.Json/JsonConvert.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Src/Newtonsoft.Json/JsonConvert.cs b/Src/Newtonsoft.Json/JsonConvert.cs index 3d310c40..e29f4829 100644 --- a/Src/Newtonsoft.Json/JsonConvert.cs +++ b/Src/Newtonsoft.Json/JsonConvert.cs @@ -422,7 +422,7 @@ namespace Newtonsoft.Json /// A JSON string representation of the . public static string ToString(string value, char delimiter) { - return ToString(value, delimiter, true, StringEscapeHandling.Default); + return ToString(value, delimiter, StringEscapeHandling.Default); } public static string ToString(string value, char delimiter, StringEscapeHandling stringEscapeHandling)