aboutsummaryrefslogtreecommitdiff
path: root/shell/ash.c
diff options
context:
space:
mode:
Diffstat (limited to 'shell/ash.c')
-rw-r--r--shell/ash.c15
1 files changed, 9 insertions, 6 deletions
diff --git a/shell/ash.c b/shell/ash.c
index 200e2d4a3..e14907073 100644
--- a/shell/ash.c
+++ b/shell/ash.c
@@ -1790,7 +1790,7 @@ extern struct globals_var *const ash_ptr_to_globals_var;
1790#define vartab (G_var.vartab ) 1790#define vartab (G_var.vartab )
1791#define varinit (G_var.varinit ) 1791#define varinit (G_var.varinit )
1792#define INIT_G_var() do { \ 1792#define INIT_G_var() do { \
1793 int i; \ 1793 unsigned i; \
1794 (*(struct globals_var**)&ash_ptr_to_globals_var) = xzalloc(sizeof(G_var)); \ 1794 (*(struct globals_var**)&ash_ptr_to_globals_var) = xzalloc(sizeof(G_var)); \
1795 barrier(); \ 1795 barrier(); \
1796 for (i = 0; i < ARRAY_SIZE(varinit_data); i++) { \ 1796 for (i = 0; i < ARRAY_SIZE(varinit_data); i++) { \
@@ -6223,7 +6223,7 @@ varvalue(char *name, int varflags, int flags, struct strlist *var_str_list)
6223 if (!eq) /* stop at first non-assignment */ 6223 if (!eq) /* stop at first non-assignment */
6224 break; 6224 break;
6225 eq++; 6225 eq++;
6226 if (name_len == (eq - str) 6226 if (name_len == (unsigned)(eq - str)
6227 && strncmp(str, name, name_len) == 0) { 6227 && strncmp(str, name, name_len) == 0) {
6228 p = eq; 6228 p = eq;
6229 /* goto value; - WRONG! */ 6229 /* goto value; - WRONG! */
@@ -9500,12 +9500,13 @@ plus_minus_o(char *name, int val)
9500 ash_msg("illegal option %co %s", val ? '-' : '+', name); 9500 ash_msg("illegal option %co %s", val ? '-' : '+', name);
9501 return 1; 9501 return 1;
9502 } 9502 }
9503 for (i = 0; i < NOPTS; i++) 9503 for (i = 0; i < NOPTS; i++) {
9504 if (val) { 9504 if (val) {
9505 out1fmt("%-16s%s\n", optnames(i), optlist[i] ? "on" : "off"); 9505 out1fmt("%-16s%s\n", optnames(i), optlist[i] ? "on" : "off");
9506 } else { 9506 } else {
9507 out1fmt("set %co %s\n", optlist[i] ? '-' : '+', optnames(i)); 9507 out1fmt("set %co %s\n", optlist[i] ? '-' : '+', optnames(i));
9508 } 9508 }
9509 }
9509 return 0; 9510 return 0;
9510} 9511}
9511static void 9512static void
@@ -9699,7 +9700,7 @@ getopts(char *optstr, char *optvar, char **optfirst, int *param_optind, int *opt
9699 return 1; 9700 return 1;
9700 optnext = optfirst + *param_optind - 1; 9701 optnext = optfirst + *param_optind - 1;
9701 9702
9702 if (*param_optind <= 1 || *optoff < 0 || strlen(optnext[-1]) < *optoff) 9703 if (*param_optind <= 1 || *optoff < 0 || (int)strlen(optnext[-1]) < *optoff)
9703 p = NULL; 9704 p = NULL;
9704 else 9705 else
9705 p = optnext[-1] + *optoff; 9706 p = optnext[-1] + *optoff;
@@ -11121,7 +11122,7 @@ xxreadtoken(void)
11121 return readtoken1(c, BASESYNTAX, (char *) NULL, 0); 11122 return readtoken1(c, BASESYNTAX, (char *) NULL, 0);
11122 } 11123 }
11123 11124
11124 if (p - xxreadtoken_chars >= xxreadtoken_singles) { 11125 if ((size_t)(p - xxreadtoken_chars) >= xxreadtoken_singles) {
11125 if (pgetc() == *p) { /* double occurrence? */ 11126 if (pgetc() == *p) { /* double occurrence? */
11126 p += xxreadtoken_doubles + 1; 11127 p += xxreadtoken_doubles + 1;
11127 } else { 11128 } else {
@@ -11817,7 +11818,8 @@ trapcmd(int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED)
11817static int 11818static int
11818helpcmd(int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED) 11819helpcmd(int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED)
11819{ 11820{
11820 int col, i; 11821 unsigned col;
11822 unsigned i;
11821 11823
11822 out1fmt("\nBuilt-in commands:\n-------------------\n"); 11824 out1fmt("\nBuilt-in commands:\n-------------------\n");
11823 for (col = 0, i = 0; i < ARRAY_SIZE(builtintab); i++) { 11825 for (col = 0, i = 0; i < ARRAY_SIZE(builtintab); i++) {
@@ -12479,6 +12481,7 @@ ulimitcmd(int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED)
12479 12481
12480 while ((c = *p++) >= '0' && c <= '9') { 12482 while ((c = *p++) >= '0' && c <= '9') {
12481 val = (val * 10) + (long)(c - '0'); 12483 val = (val * 10) + (long)(c - '0');
12484 // val is actually 'unsigned long int' and can't get < 0
12482 if (val < (rlim_t) 0) 12485 if (val < (rlim_t) 0)
12483 break; 12486 break;
12484 } 12487 }