1
0
Fork 0
mirror of git://git.code.sf.net/p/zsh/code synced 2025-10-25 17:20:25 +02:00

22474: use variable argument lists to improve error message handling

This commit is contained in:
Peter Stephenson 2006-05-30 22:35:03 +00:00
parent fd240e09b0
commit dd5602f59b
52 changed files with 937 additions and 931 deletions

View file

@ -380,10 +380,10 @@ bin_stat(char *name, char **args, Options ops, UNUSED(int func))
iwhich = aptr - statelts;
}
if (found > 1) {
zwarnnam(name, "%s: ambiguous stat element", arg, 0);
zwarnnam(name, "%s: ambiguous stat element", arg);
return 1;
} else if (found == 0) {
zwarnnam(name, "%s: no such stat element", arg, 0);
zwarnnam(name, "%s: no such stat element", arg);
return 1;
}
/* if name of link requested, turn on lstat */
@ -398,8 +398,7 @@ bin_stat(char *name, char **args, Options ops, UNUSED(int func))
if (arg[1]) {
arrnam = arg+1;
} else if (!(arrnam = *++args)) {
zwarnnam(name, "missing parameter name",
NULL, 0);
zwarnnam(name, "missing parameter name");
return 1;
}
flags |= STF_ARRAY;
@ -408,8 +407,7 @@ bin_stat(char *name, char **args, Options ops, UNUSED(int func))
if (arg[1]) {
hashnam = arg+1;
} else if (!(hashnam = *++args)) {
zwarnnam(name, "missing parameter name",
NULL, 0);
zwarnnam(name, "missing parameter name");
return 1;
}
flags |= STF_HASH;
@ -420,12 +418,12 @@ bin_stat(char *name, char **args, Options ops, UNUSED(int func))
if (arg[1]) {
sfd = arg+1;
} else if (!(sfd = *++args)) {
zwarnnam(name, "missing file descriptor", NULL, 0);
zwarnnam(name, "missing file descriptor");
return 1;
}
fd = zstrtol(sfd, &sfd, 10);
if (*sfd) {
zwarnnam(name, "bad file descriptor", NULL, 0);
zwarnnam(name, "bad file descriptor");
return 1;
}
break;
@ -433,14 +431,14 @@ bin_stat(char *name, char **args, Options ops, UNUSED(int func))
if (arg[1]) {
timefmt = arg+1;
} else if (!(timefmt = *++args)) {
zwarnnam(name, "missing time format", NULL, 0);
zwarnnam(name, "missing time format");
return 1;
}
/* force string format in order to use time format */
ops->ind['s'] = 1;
break;
} else {
zwarnnam(name, "bad option: -%c", NULL, *arg);
zwarnnam(name, "bad option: -%c", *arg);
return 1;
}
}
@ -449,7 +447,7 @@ bin_stat(char *name, char **args, Options ops, UNUSED(int func))
if ((flags & STF_ARRAY) && (flags & STF_HASH)) {
/* We don't implement setting multiple variables at once */
zwarnnam(name, "both array and hash requested", NULL, 0);
zwarnnam(name, "both array and hash requested");
return 1;
/* Alternate method would be to make -H blank arrnam etc etc *
* and so get 'silent loss' of earlier choice, which would *
@ -481,10 +479,10 @@ bin_stat(char *name, char **args, Options ops, UNUSED(int func))
}
if (!*args && !OPT_ISSET(ops,'f')) {
zwarnnam(name, "no files given", NULL, 0);
zwarnnam(name, "no files given");
return 1;
} else if (*args && OPT_ISSET(ops,'f')) {
zwarnnam(name, "no files allowed with -f", NULL, 0);
zwarnnam(name, "no files allowed with -f");
return 1;
}
@ -524,7 +522,7 @@ bin_stat(char *name, char **args, Options ops, UNUSED(int func))
if (hashnam) {
if (nargs > 1) {
zwarnnam(name, "only one file allowed with -H", NULL, 0);
zwarnnam(name, "only one file allowed with -H");
return 1;
}
arrsize = (flags & STF_PICK) ? 1 : ST_COUNT;