aboutsummaryrefslogtreecommitdiffstats
path: root/expr.cc
diff options
context:
space:
mode:
authorShinichiro Hamaji <shinichiro.hamaji@gmail.com>2016-06-07 14:35:41 +0900
committerShinichiro Hamaji <shinichiro.hamaji@gmail.com>2016-06-07 14:35:41 +0900
commit3e98b6b9f822c6a142eea55a9d387be88b6f02d9 (patch)
treea7687f41871e6f28a818ab6a50f2dc2513cbfc06 /expr.cc
parent71e7934571ae7e71e8ae5e80cd163b5812bd71db (diff)
downloadandroid_build_kati-3e98b6b9f822c6a142eea55a9d387be88b6f02d9.tar.gz
android_build_kati-3e98b6b9f822c6a142eea55a9d387be88b6f02d9.tar.bz2
android_build_kati-3e98b6b9f822c6a142eea55a9d387be88b6f02d9.zip
[C++] Fix handling CRLF after a backslash
This fixes #77
Diffstat (limited to 'expr.cc')
-rw-r--r--expr.cc2
1 files changed, 2 insertions, 0 deletions
diff --git a/expr.cc b/expr.cc
index ad7d19e..5e7afe6 100644
--- a/expr.cc
+++ b/expr.cc
@@ -537,6 +537,8 @@ Value* ParseExprImpl(const Loc& loc,
r->AddValue(new Literal(StringPiece(" ")));
// Skip the current escaped newline
i += 2;
+ if (n == '\r' && s.get(i) == '\n')
+ i++;
// Then continue skipping escaped newlines, spaces, and tabs
for (; i < s.size(); i++) {
if (s[i] == '\\' && (s.get(i+1) == '\r' || s.get(i+1) == '\n')) {