teach EscapeString and UnescapeString to handle ".
authorChris Lattner <sabre@nondot.org>
Wed, 15 Apr 2009 20:12:52 +0000 (20:12 +0000)
committerChris Lattner <sabre@nondot.org>
Wed, 15 Apr 2009 20:12:52 +0000 (20:12 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@69211 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Support/StringExtras.cpp

index d403a083d47f8543515a0a19eee03397e4db9f15..1618086e602ea0b424488f5b2f89f98ff2d3bd73 100644 (file)
@@ -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');