]> git.pond.sub.org Git - empserver/commitdiff
Make xdprval() oops on bad argument
authorMarkus Armbruster <armbru@pond.sub.org>
Mon, 3 Mar 2008 20:43:36 +0000 (21:43 +0100)
committerMarkus Armbruster <armbru@pond.sub.org>
Fri, 14 Mar 2008 19:25:40 +0000 (20:25 +0100)
src/lib/commands/xdump.c

index adc278a43f61e124cbb6410179adea7f3b46d759..92d4762f7886ee37ae06e40001613d9de7e9e56b 100644 (file)
@@ -106,12 +106,20 @@ xdeval(struct valstr *val,
     return val;                        /* FIXME nstr_exec_val() should return VAL */
 }
 
-/* Dump VAL prefixed with SEP, return " ".  */
+/*
+ * Dump VAL prefixed with SEP, return " ".
+ * VAL must be evaluated.
+ */
 static char *
 xdprval(struct valstr *val, char *sep)
 {
     unsigned char *s, *e, *l;
 
+    if (CANT_HAPPEN(val->val_cat != NSC_VAL)) {
+       pr("%snil", sep);
+       return " ";
+    }
+
     switch (val->val_type) {
     case NSC_LONG:
        pr("%s%ld", sep, val->val_as.lng);