summaryrefslogtreecommitdiff
path: root/tikzit/src/common/tikzlexer.lm
diff options
context:
space:
mode:
authorAlex Merry <alex.merry@cs.ox.ac.uk>2012-05-29 16:10:59 +0100
committerAlex Merry <alex.merry@cs.ox.ac.uk>2012-05-29 16:10:59 +0100
commit96bb49b438646b54f1a667a66a9bb1b2c27d7b4f (patch)
tree4f617b1466645c730b2b939f8b15cf47042ac773 /tikzit/src/common/tikzlexer.lm
parentadb00e5861d749d073f42b18eb4c16dd0e893a07 (diff)
Fix handling for property values containing = or ,
Equals and comma are special values that need to be quoted with curly braces. This both parses and generates such quoted strings, although they are only generated when necessary.
Diffstat (limited to 'tikzit/src/common/tikzlexer.lm')
-rw-r--r--tikzit/src/common/tikzlexer.lm6
1 files changed, 3 insertions, 3 deletions
diff --git a/tikzit/src/common/tikzlexer.lm b/tikzit/src/common/tikzlexer.lm
index c6deb3f..9418d83 100644
--- a/tikzit/src/common/tikzlexer.lm
+++ b/tikzit/src/common/tikzlexer.lm
@@ -77,19 +77,19 @@ at return AT;
}
\{ {
- NSMutableString *buf = [NSMutableString stringWithString:@"{"];
+ NSMutableString *buf = [NSMutableString string];
unsigned int brace_depth = 1;
while (1) {
char c = input();
// eof reached before closing brace
if (c == '\0' || c == EOF) yyterminate();
-
- [buf appendFormat:@"%c", c];
+
if (c == '{') brace_depth++;
else if (c == '}') {
brace_depth--;
if (brace_depth == 0) break;
}
+ [buf appendFormat:@"%c", c];
}
NSString *s = [buf copy];