From 3eefdb227eb864c2154b1373a51fae3b965eab43 Mon Sep 17 00:00:00 2001 From: Daniel Grunwald Date: Wed, 16 Feb 2011 22:44:13 +0100 Subject: [PATCH] Escape surrogates in string literals. --- .../CSharp/OutputVisitor/OutputVisitor.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/NRefactory/ICSharpCode.NRefactory/CSharp/OutputVisitor/OutputVisitor.cs b/NRefactory/ICSharpCode.NRefactory/CSharp/OutputVisitor/OutputVisitor.cs index 8e2b94d0e..0abdd4fd5 100644 --- a/NRefactory/ICSharpCode.NRefactory/CSharp/OutputVisitor/OutputVisitor.cs +++ b/NRefactory/ICSharpCode.NRefactory/CSharp/OutputVisitor/OutputVisitor.cs @@ -837,7 +837,7 @@ namespace ICSharpCode.NRefactory.CSharp case '\v': return "\\v"; default: - if (char.IsControl(ch)) { + if (char.IsControl(ch) || char.IsSurrogate(ch)) { return "\\u" + ((int)ch).ToString("x4"); } else { return ch.ToString();