
2011/4/14 Eric Blake <eblake@redhat.com>:
On 04/14/2011 06:00 AM, Matthias Bolte wrote:
ACK, we just need to make sure contains_specialcharacters() and escape_specialcharacters() don't diverge on the charater set. Maybe add a comment in escape_specialcharacters() to this effect.
Daniel
I just moved the character set to a define, like this and pushed the result.
@@ -905,32 +911,10 @@ contains_specialcharacters(const char *src)
for (i = 0; i < len; i++) { switch (src[i]) { + SPECIALCHARACTER_CASES + return true; + default: + continue; }
Fair enough - continue the loop until we find a special character.
}
@@ -954,35 +938,11 @@ escape_specialcharacters(const char *src)
for (i = 0; i < len; i++) { switch (src[i]) { + SPECIALCHARACTER_CASES + continue; + default: + dst[j] = src[i]; + j++;
Huh? That is not escaping characters, but omitting them! This code seems rather broken; was the intent to add \ escaping before special characters?
Well, The code was this way from the beginning, we'll have to ask Eduardo about its intention here. Matthias