Fix numerous bugs when parsing options and arguments.
This commit is contained in:
parent
1f9b2f54c8
commit
1a8465da88
@ -154,11 +154,12 @@ main(int ac, char **av)
|
||||
switch (**av) {
|
||||
case 'j':
|
||||
++*av;
|
||||
if (**av == '\0')
|
||||
if (**av == '\0') {
|
||||
++av;
|
||||
--ac;
|
||||
--ac;
|
||||
}
|
||||
jflag++;
|
||||
if (!*av)
|
||||
if (*av == NULL)
|
||||
errx(1, "must specify jid");
|
||||
jid = strtol(*av, &ep, 10);
|
||||
if (!*av || *ep)
|
||||
@ -168,23 +169,32 @@ main(int ac, char **av)
|
||||
break;
|
||||
case 'u':
|
||||
++*av;
|
||||
if (**av == '\0')
|
||||
if (**av == '\0') {
|
||||
++av;
|
||||
--ac;
|
||||
--ac;
|
||||
}
|
||||
if (*av == NULL)
|
||||
errx(1, "must specify user");
|
||||
user = *av;
|
||||
break;
|
||||
case 't':
|
||||
++*av;
|
||||
if (**av == '\0')
|
||||
if (**av == '\0') {
|
||||
++av;
|
||||
--ac;
|
||||
--ac;
|
||||
}
|
||||
if (*av == NULL)
|
||||
errx(1, "must specify tty");
|
||||
tty = *av;
|
||||
break;
|
||||
case 'c':
|
||||
++*av;
|
||||
if (**av == '\0')
|
||||
if (**av == '\0') {
|
||||
++av;
|
||||
--ac;
|
||||
--ac;
|
||||
}
|
||||
if (*av == NULL)
|
||||
errx(1, "must specify procname");
|
||||
cmd = *av;
|
||||
break;
|
||||
case 'v':
|
||||
|
Loading…
Reference in New Issue
Block a user