]> xenbits.xensource.com Git - libvirt.git/commitdiff
conf: Convert ParseString to use STRPREFIX
authorCole Robinson <crobinso@redhat.com>
Thu, 18 Nov 2010 22:33:36 +0000 (17:33 -0500)
committerCole Robinson <crobinso@redhat.com>
Mon, 22 Nov 2010 21:37:21 +0000 (16:37 -0500)
src/util/conf.c

index ba1a384a6736d44b625d6438db72a5383b992c05..a31bbc4f031b01b13b838a67857510d0655e0d6a 100644 (file)
@@ -394,17 +394,20 @@ virConfParseString(virConfParserCtxtPtr ctxt)
             return NULL;
         }
         NEXT;
-    } else if ((ctxt->cur + 6 < ctxt->end) && (ctxt->cur[0] == '"') &&
-               (ctxt->cur[1] == '"') && (ctxt->cur[2] == '"')) {
+    } else if ((ctxt->cur + 6 < ctxt->end) &&
+               (STRPREFIX(ctxt->cur, "\"\"\""))) {
+        /* String starts with python-style triple quotes """ */
         ctxt->cur += 3;
         base = ctxt->cur;
-        while ((ctxt->cur + 2 < ctxt->end) && (ctxt->cur[0] == '"') &&
-               (ctxt->cur[1] == '"') && (ctxt->cur[2] == '"')) {
-               if (CUR == '\n') ctxt->line++;
-               NEXT;
+
+        while ((ctxt->cur + 2 < ctxt->end) &&
+               (STRPREFIX(ctxt->cur, "\"\"\""))) {
+            if (CUR == '\n')
+                ctxt->line++;
+            NEXT;
         }
-        if ((ctxt->cur[0] != '"') || (ctxt->cur[1] != '"') ||
-            (ctxt->cur[2] != '"')) {
+
+        if (!STRPREFIX(ctxt->cur, "\"\"\"")) {
             virConfError(ctxt, VIR_ERR_CONF_SYNTAX, _("unterminated string"));
             return(NULL);
         }