aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2009-04-15 20:12:52 +0000
committerChris Lattner <sabre@nondot.org>2009-04-15 20:12:52 +0000
commit688adfdd48900a43bfd66031d00983cd656e807e (patch)
tree081537016774f7d3c18cae67f994d47c25ccb634
parent12e528beb5b91114ccdc12e7ff1b6e6597202321 (diff)
downloadexternal_llvm-688adfdd48900a43bfd66031d00983cd656e807e.zip
external_llvm-688adfdd48900a43bfd66031d00983cd656e807e.tar.gz
external_llvm-688adfdd48900a43bfd66031d00983cd656e807e.tar.bz2
teach EscapeString and UnescapeString to handle ".
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@69211 91177308-0d34-0410-b5e6-96231b3b80d8
-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');