aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Support/StringExtras.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lib/Support/StringExtras.cpp')
-rw-r--r--lib/Support/StringExtras.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/Support/StringExtras.cpp b/lib/Support/StringExtras.cpp
index d403a08..1618086 100644
--- a/lib/Support/StringExtras.cpp
+++ b/lib/Support/StringExtras.cpp
@@ -77,6 +77,7 @@ void llvm::UnescapeString(std::string &Str) {
case 'r': Str[i] = '\r'; break;
case 't': Str[i] = '\t'; break;
case 'v': Str[i] = '\v'; break;
+ case '"': Str[i] = '\"'; break;
case '\'': Str[i] = '\''; break;
case '\\': Str[i] = '\\'; break;
}
@@ -96,6 +97,8 @@ void llvm::EscapeString(std::string &Str) {
} else if (Str[i] == '\t') {
Str[i++] = '\\';
Str.insert(Str.begin()+i, 't');
+ } else if (Str[i] == '"') {
+ Str.insert(Str.begin()+i++, '\\');
} else if (Str[i] == '\n') {
Str[i++] = '\\';
Str.insert(Str.begin()+i, 'n');