documentation updates for arrayname[0]; update trace/debug order for some compound commands

This commit is contained in:
Chet Ramey
2023-08-28 12:16:01 -04:00
parent 944ac21503
commit f4683835d8
7 changed files with 70 additions and 52 deletions
+5 -13
View File
@@ -503,22 +503,13 @@ cut_internal (int which, WORD_LIST *list)
}
if (array_name)
{
v = find_or_make_array_variable (array_name, 1);
if (v == 0 || readonly_p (v) || noassign_p (v))
{
v = builtin_find_indexed_array (array_name, 1);
if (v == 0)
{
if (v && readonly_p (v))
err_readonly (array_name);
free (poslist);
return (EXECUTION_FAILURE);
}
else if (array_p (v) == 0)
{
builtin_error ("%s: not an indexed array", array_name);
return (EXECUTION_FAILURE);
}
if (invisible_p (v))
VUNSETATTR (v, att_invisible);
array_flush (array_cell (v));
}
op.flags = cutflags;
@@ -542,6 +533,7 @@ cut_internal (int which, WORD_LIST *list)
else
rval = cutfile (v, list, &op);
free (poslist);
return (rval);
}
+8 -13
View File
@@ -53,7 +53,6 @@ extern int errno;
extern char **make_builtin_argv (WORD_LIST *, int *);
static int octal(char *);
static struct stat *getstat(char *);
static int printinfo(char *);
static int getperm(int);
@@ -95,17 +94,6 @@ static int pmask;
#define OPTIONS "acdgiflmnopsuACGMP:U"
static int
octal(char *s)
{
int r;
r = *s - '0';
while (*++s >= '0' && *s <= '7')
r = (r * 8) + (*s - '0');
return r;
}
static int
finfo_main(int argc, char **argv)
{
@@ -136,7 +124,14 @@ finfo_main(int argc, char **argv)
case 'n': flags |= OPT_NLINK; break;
case 'o': flags |= OPT_OPERM; break;
case 'p': flags |= OPT_PERM; break;
case 'P': flags |= OPT_PMASK; pmask = octal(sh_optarg); break;
case 'P':
flags |= OPT_PMASK;
pmask = octal(sh_optarg);
if (pmask < 0) {
builtin_error ("invalid mode: %s", sh_optarg);
return(1);
}
break;
case 's': flags |= OPT_SIZE; break;
case 'u': flags |= OPT_UID; break;
case 'U': flags |= OPT_UID|OPT_ASCII; break;