- Timestamp:
- Dec 14, 2022, 10:17:38 AM (3 years ago)
- Location:
- trunk/src/kash
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/kash/eval.c
r3477 r3573 1068 1068 } 1069 1069 1070 #ifdef KASH_USE_FORKSHELL2 1070 1071 /* Copies data in the argument structure from parent to child. */ 1071 1072 static void evalcommand_setup_child(shinstance *pshchild, shinstance *pshparent, void *argp) … … 1116 1117 args->cmdentry.u.func = copyparsetree(pshchild, args->cmdentry.u.func); /** @todo isn't this duplicated already? */ 1117 1118 } 1119 #endif /* KASH_USE_FORKSHELL2 */ 1118 1120 1119 1121 /* -
trunk/src/kash/memalloc.h
r3477 r3573 127 127 # define PSTPUTSTRN(psh, str, n, p) do { \ 128 128 pstack_block *pstmacro = (psh)->curpstack; \ 129 if (pstmacro->strleft >= ( n)) {/*likely?*/} \129 if (pstmacro->strleft >= (size_t)(n)) {/*likely?*/} \ 130 130 else (p) = pstmakestrspace(psh, (n), (p)); \ 131 131 pstmacro->strleft -= (n); \ … … 140 140 # define PSTUPUTC(psh, c, p) do { kHlpAssert((psh)->sstrnleft > 0); --(psh)->sstrnleft; *(p)++ = (c); } while (0) 141 141 # define PSTPUTC(psh, c, p) do { if (--(psh)->sstrnleft >= 0) *(p)++ = (c); else (p) = pstputcgrow(psh, (p), (c)); } while (0) 142 # define PSTPUTSTRN(psh, str, n, p) do { if ((psh)->sstrnleft >= ( n)) {/*likely?*/} else (p) = pstmakestrspace(psh, (n), (p)); \142 # define PSTPUTSTRN(psh, str, n, p) do { if ((psh)->sstrnleft >= (size_t)(n)) {/*likely?*/} else (p) = pstmakestrspace(psh, (n), (p)); \ 143 143 memcpy((p), (str), (n)); (psh)->sstrnleft -= (n); (p) += (n); } while (0) 144 144 #endif -
trunk/src/kash/output.c
r3570 r3573 394 394 /* we don't implement 'x'; treat like 'X' */ 395 395 digit = digit_lower; 396 /*FALLTHROUGH*/ 396 397 case 'X': 397 398 base = 16; -
trunk/src/kash/parser.c
r3477 r3573 393 393 synexpect(psh, -1); 394 394 } else { 395 static char argvars[5] = {CTLVAR, VSNORMAL|VSQUOTE,395 static char argvars[5] = {CTLVAR, (char)(unsigned char)(VSNORMAL|VSQUOTE), 396 396 '@', '=', '\0'}; 397 397 n2 = pstallocnode(psh, sizeof (struct narg)); … … 497 497 if (!redir) 498 498 synexpect(psh, -1); 499 /* FALLTHROUGH */ 499 500 case TAND: 500 501 case TOR: … … 1642 1643 const char *tmp; 1643 1644 1644 1645 1646 1645 /* skip the path */ 1646 for (tmp = strpbrk(argv0, "\\/:"); tmp; tmp = strpbrk(argv0, "\\/:")) 1647 argv0 = tmp + 1; 1647 1648 1648 1649 if (lenp) {
Note:
See TracChangeset
for help on using the changeset viewer.