From: Andre Noll Date: Sat, 31 May 2008 18:40:33 +0000 (+0200) Subject: Fix the uid parser. X-Git-Tag: v0.0.2~29 X-Git-Url: http://git.tuebingen.mpg.de/?p=adu.git;a=commitdiff_plain;h=89145fb2c0385736548328362e356c58c1fc409c Fix the uid parser. Using e.g. --uid 42 caused parse_uid_range() to pass a NULL pointer to check_uid_arg(). --- diff --git a/adu.c b/adu.c index 8721089..b7be069 100644 --- a/adu.c +++ b/adu.c @@ -80,10 +80,8 @@ static int parse_uid_range(const char *orig_arg, struct uid_range *ur) int ret; char *arg = para_strdup(orig_arg), *p = strchr(arg, '-'); - if (!p || p == arg) { - if (p == arg) /* -42 */ - p++; - ret = check_uid_arg(p, &ur->high); + if (!p || p == arg) { /* -42 or 42 */ + ret = check_uid_arg(p? p + 1 : arg, &ur->high); if (ret < 0) goto out; ur->low = p? 0 : ur->high;