From d3345ce66c746ddd3ae8fedbd10732edd4aa8e8d Mon Sep 17 00:00:00 2001 From: Markus Armbruster Date: Mon, 3 Mar 2008 21:43:36 +0100 Subject: [PATCH] Make xdprval() oops on bad argument --- src/lib/commands/xdump.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/lib/commands/xdump.c b/src/lib/commands/xdump.c index adc278a4..92d4762f 100644 --- a/src/lib/commands/xdump.c +++ b/src/lib/commands/xdump.c @@ -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);