From 96bb49b438646b54f1a667a66a9bb1b2c27d7b4f Mon Sep 17 00:00:00 2001 From: Alex Merry Date: Tue, 29 May 2012 16:10:59 +0100 Subject: 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. --- tikzit/src/common/GraphElementProperty.m | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'tikzit/src/common/GraphElementProperty.m') diff --git a/tikzit/src/common/GraphElementProperty.m b/tikzit/src/common/GraphElementProperty.m index 9751230..4b47ca6 100644 --- a/tikzit/src/common/GraphElementProperty.m +++ b/tikzit/src/common/GraphElementProperty.m @@ -118,7 +118,15 @@ } else if ([self isKeyMatch]) { return [NSString stringWithFormat:@"%@=*", [self key]]; } else { - return [NSString stringWithFormat:@"%@=%@", [self key], [self value]]; + static NSCharacterSet *avoid = nil; + if (avoid == nil) + avoid = [[NSCharacterSet characterSetWithCharactersInString:@",="] retain]; + + if ([[self value] rangeOfCharacterFromSet:avoid].length > 0) { + return [NSString stringWithFormat:@"%@={%@}", [self key], [self value]]; + } else { + return [NSString stringWithFormat:@"%@=%@", [self key], [self value]]; + } } } -- cgit v1.2.3