]> xenbits.xensource.com Git - libvirt.git/commitdiff
Fix sexpr2string() to handle empty list.
authorJim Fehlig <jfehlig@novell.com>
Tue, 25 Aug 2009 21:54:18 +0000 (15:54 -0600)
committerDaniel P. Berrange <berrange@redhat.com>
Sun, 30 Aug 2009 10:56:03 +0000 (11:56 +0100)
S-expression containing empty lists, e.g. (cpus (() () () ())),
was not being handled properly in sexpr2string() serialization.
Emit an empty list when encountering NIL sexpr kind.

src/sexpr.c

index bc82d1fda80ca752a7bd9f5a74bd89f49415d82c..81cb49f269a2f6b24cb09c585c1fdae41d86b8af 100644 (file)
@@ -255,6 +255,10 @@ sexpr2string(const struct sexpr * sexpr, char *buffer, size_t n_buffer)
             ret += tmp;
             break;
         case SEXPR_NIL:
+            tmp = snprintf(buffer + ret, n_buffer - ret, "()");
+            if (tmp == 0)
+                goto error;
+            ret += tmp;
             break;
         default:
             goto error;