diff options
Diffstat (limited to 'sh.c')
-rw-r--r-- | sh.c | 34 |
1 files changed, 17 insertions, 17 deletions
@@ -250,7 +250,7 @@ static int builtin_exec(struct job *cmd, struct jobSet *junk) | |||
250 | { | 250 | { |
251 | cmd->progs[0].argv++; | 251 | cmd->progs[0].argv++; |
252 | execvp(cmd->progs[0].argv[0], cmd->progs[0].argv); | 252 | execvp(cmd->progs[0].argv[0], cmd->progs[0].argv); |
253 | fatalError("Exec to %s failed: %s\n", cmd->progs[0].argv[0], | 253 | error_msg_and_die("Exec to %s failed: %s\n", cmd->progs[0].argv[0], |
254 | strerror(errno)); | 254 | strerror(errno)); |
255 | } | 255 | } |
256 | return EXIT_SUCCESS; | 256 | return EXIT_SUCCESS; |
@@ -273,12 +273,12 @@ static int builtin_fg_bg(struct job *cmd, struct jobSet *jobList) | |||
273 | 273 | ||
274 | if (!jobList->head) { | 274 | if (!jobList->head) { |
275 | if (!cmd->progs[0].argv[1] || cmd->progs[0].argv[2]) { | 275 | if (!cmd->progs[0].argv[1] || cmd->progs[0].argv[2]) { |
276 | errorMsg("%s: exactly one argument is expected\n", | 276 | error_msg("%s: exactly one argument is expected\n", |
277 | cmd->progs[0].argv[0]); | 277 | cmd->progs[0].argv[0]); |
278 | return EXIT_FAILURE; | 278 | return EXIT_FAILURE; |
279 | } | 279 | } |
280 | if (sscanf(cmd->progs[0].argv[1], "%%%d", &jobNum) != 1) { | 280 | if (sscanf(cmd->progs[0].argv[1], "%%%d", &jobNum) != 1) { |
281 | errorMsg("%s: bad argument '%s'\n", | 281 | error_msg("%s: bad argument '%s'\n", |
282 | cmd->progs[0].argv[0], cmd->progs[0].argv[1]); | 282 | cmd->progs[0].argv[0], cmd->progs[0].argv[1]); |
283 | return EXIT_FAILURE; | 283 | return EXIT_FAILURE; |
284 | for (job = jobList->head; job; job = job->next) { | 284 | for (job = jobList->head; job; job = job->next) { |
@@ -292,7 +292,7 @@ static int builtin_fg_bg(struct job *cmd, struct jobSet *jobList) | |||
292 | } | 292 | } |
293 | 293 | ||
294 | if (!job) { | 294 | if (!job) { |
295 | errorMsg("%s: unknown job %d\n", | 295 | error_msg("%s: unknown job %d\n", |
296 | cmd->progs[0].argv[0], jobNum); | 296 | cmd->progs[0].argv[0], jobNum); |
297 | return EXIT_FAILURE; | 297 | return EXIT_FAILURE; |
298 | } | 298 | } |
@@ -444,7 +444,7 @@ static int builtin_then(struct job *cmd, struct jobSet *junk) | |||
444 | char* charptr1=cmd->text+5; /* skip over the leading 'then ' */ | 444 | char* charptr1=cmd->text+5; /* skip over the leading 'then ' */ |
445 | 445 | ||
446 | if (! (cmd->jobContext & (IF_TRUE_CONTEXT|IF_FALSE_CONTEXT))) { | 446 | if (! (cmd->jobContext & (IF_TRUE_CONTEXT|IF_FALSE_CONTEXT))) { |
447 | errorMsg("unexpected token `then'\n"); | 447 | error_msg("unexpected token `then'\n"); |
448 | return EXIT_FAILURE; | 448 | return EXIT_FAILURE; |
449 | } | 449 | } |
450 | /* If the if result was FALSE, skip the 'then' stuff */ | 450 | /* If the if result was FALSE, skip the 'then' stuff */ |
@@ -471,7 +471,7 @@ static int builtin_else(struct job *cmd, struct jobSet *junk) | |||
471 | char* charptr1=cmd->text+5; /* skip over the leading 'else ' */ | 471 | char* charptr1=cmd->text+5; /* skip over the leading 'else ' */ |
472 | 472 | ||
473 | if (! (cmd->jobContext & (IF_TRUE_CONTEXT|IF_FALSE_CONTEXT))) { | 473 | if (! (cmd->jobContext & (IF_TRUE_CONTEXT|IF_FALSE_CONTEXT))) { |
474 | errorMsg("unexpected token `else'\n"); | 474 | error_msg("unexpected token `else'\n"); |
475 | return EXIT_FAILURE; | 475 | return EXIT_FAILURE; |
476 | } | 476 | } |
477 | /* If the if result was TRUE, skip the 'else' stuff */ | 477 | /* If the if result was TRUE, skip the 'else' stuff */ |
@@ -495,7 +495,7 @@ static int builtin_else(struct job *cmd, struct jobSet *junk) | |||
495 | static int builtin_fi(struct job *cmd, struct jobSet *junk) | 495 | static int builtin_fi(struct job *cmd, struct jobSet *junk) |
496 | { | 496 | { |
497 | if (! (cmd->jobContext & (IF_TRUE_CONTEXT|IF_FALSE_CONTEXT))) { | 497 | if (! (cmd->jobContext & (IF_TRUE_CONTEXT|IF_FALSE_CONTEXT))) { |
498 | errorMsg("unexpected token `fi'\n"); | 498 | error_msg("unexpected token `fi'\n"); |
499 | return EXIT_FAILURE; | 499 | return EXIT_FAILURE; |
500 | } | 500 | } |
501 | /* Clear out the if and then context bits */ | 501 | /* Clear out the if and then context bits */ |
@@ -646,7 +646,7 @@ static int setupRedirections(struct childProgram *prog) | |||
646 | if (openfd < 0) { | 646 | if (openfd < 0) { |
647 | /* this could get lost if stderr has been redirected, but | 647 | /* this could get lost if stderr has been redirected, but |
648 | bash and ash both lose it as well (though zsh doesn't!) */ | 648 | bash and ash both lose it as well (though zsh doesn't!) */ |
649 | errorMsg("error opening %s: %s\n", redir->filename, | 649 | error_msg("error opening %s: %s\n", redir->filename, |
650 | strerror(errno)); | 650 | strerror(errno)); |
651 | return 1; | 651 | return 1; |
652 | } | 652 | } |
@@ -820,7 +820,7 @@ static void globLastArgument(struct childProgram *prog, int *argcPtr, | |||
820 | if (strpbrk(prog->argv[argc_l - 1],"*[]?")!= NULL){ | 820 | if (strpbrk(prog->argv[argc_l - 1],"*[]?")!= NULL){ |
821 | rc = glob(prog->argv[argc_l - 1], flags, NULL, &prog->globResult); | 821 | rc = glob(prog->argv[argc_l - 1], flags, NULL, &prog->globResult); |
822 | if (rc == GLOB_NOSPACE) { | 822 | if (rc == GLOB_NOSPACE) { |
823 | errorMsg("out of space during glob operation\n"); | 823 | error_msg("out of space during glob operation\n"); |
824 | return; | 824 | return; |
825 | } else if (rc == GLOB_NOMATCH || | 825 | } else if (rc == GLOB_NOMATCH || |
826 | (!rc && (prog->globResult.gl_pathc - i) == 1 && | 826 | (!rc && (prog->globResult.gl_pathc - i) == 1 && |
@@ -927,7 +927,7 @@ static int parseCommand(char **commandPtr, struct job *job, struct jobSet *jobLi | |||
927 | if (*src == '\\') { | 927 | if (*src == '\\') { |
928 | src++; | 928 | src++; |
929 | if (!*src) { | 929 | if (!*src) { |
930 | errorMsg("character expected after \\\n"); | 930 | error_msg("character expected after \\\n"); |
931 | freeJob(job); | 931 | freeJob(job); |
932 | return 1; | 932 | return 1; |
933 | } | 933 | } |
@@ -1009,7 +1009,7 @@ static int parseCommand(char **commandPtr, struct job *job, struct jobSet *jobLi | |||
1009 | chptr++; | 1009 | chptr++; |
1010 | 1010 | ||
1011 | if (!*chptr) { | 1011 | if (!*chptr) { |
1012 | errorMsg("file name expected after %c\n", *src); | 1012 | error_msg("file name expected after %c\n", *src); |
1013 | freeJob(job); | 1013 | freeJob(job); |
1014 | job->numProgs=0; | 1014 | job->numProgs=0; |
1015 | return 1; | 1015 | return 1; |
@@ -1028,7 +1028,7 @@ static int parseCommand(char **commandPtr, struct job *job, struct jobSet *jobLi | |||
1028 | if (*prog->argv[argc_l]) | 1028 | if (*prog->argv[argc_l]) |
1029 | argc_l++; | 1029 | argc_l++; |
1030 | if (!argc_l) { | 1030 | if (!argc_l) { |
1031 | errorMsg("empty command in pipe\n"); | 1031 | error_msg("empty command in pipe\n"); |
1032 | freeJob(job); | 1032 | freeJob(job); |
1033 | job->numProgs=0; | 1033 | job->numProgs=0; |
1034 | return 1; | 1034 | return 1; |
@@ -1055,7 +1055,7 @@ static int parseCommand(char **commandPtr, struct job *job, struct jobSet *jobLi | |||
1055 | src++; | 1055 | src++; |
1056 | 1056 | ||
1057 | if (!*src) { | 1057 | if (!*src) { |
1058 | errorMsg("empty command in pipe\n"); | 1058 | error_msg("empty command in pipe\n"); |
1059 | freeJob(job); | 1059 | freeJob(job); |
1060 | job->numProgs=0; | 1060 | job->numProgs=0; |
1061 | return 1; | 1061 | return 1; |
@@ -1114,7 +1114,7 @@ static int parseCommand(char **commandPtr, struct job *job, struct jobSet *jobLi | |||
1114 | * command line, making extra room as needed */ | 1114 | * command line, making extra room as needed */ |
1115 | --src; | 1115 | --src; |
1116 | charptr1 = xmalloc(BUFSIZ); | 1116 | charptr1 = xmalloc(BUFSIZ); |
1117 | while ( (size=fullRead(pipefd[0], charptr1, BUFSIZ-1)) >0) { | 1117 | while ( (size=full_read(pipefd[0], charptr1, BUFSIZ-1)) >0) { |
1118 | int newSize=src - *commandPtr + size + 1 + strlen(charptr2); | 1118 | int newSize=src - *commandPtr + size + 1 + strlen(charptr2); |
1119 | if (newSize > BUFSIZ) { | 1119 | if (newSize > BUFSIZ) { |
1120 | *commandPtr=xrealloc(*commandPtr, src - *commandPtr + | 1120 | *commandPtr=xrealloc(*commandPtr, src - *commandPtr + |
@@ -1145,7 +1145,7 @@ static int parseCommand(char **commandPtr, struct job *job, struct jobSet *jobLi | |||
1145 | case '\\': | 1145 | case '\\': |
1146 | src++; | 1146 | src++; |
1147 | if (!*src) { | 1147 | if (!*src) { |
1148 | errorMsg("character expected after \\\n"); | 1148 | error_msg("character expected after \\\n"); |
1149 | freeJob(job); | 1149 | freeJob(job); |
1150 | return 1; | 1150 | return 1; |
1151 | } | 1151 | } |
@@ -1291,7 +1291,7 @@ static int runCommand(struct job *newJob, struct jobSet *jobList, int inBg, int | |||
1291 | #endif | 1291 | #endif |
1292 | 1292 | ||
1293 | execvp(newJob->progs[i].argv[0], newJob->progs[i].argv); | 1293 | execvp(newJob->progs[i].argv[0], newJob->progs[i].argv); |
1294 | fatalError("%s: %s\n", newJob->progs[i].argv[0], | 1294 | error_msg_and_die("%s: %s\n", newJob->progs[i].argv[0], |
1295 | strerror(errno)); | 1295 | strerror(errno)); |
1296 | } | 1296 | } |
1297 | if (outPipe[1]!=-1) { | 1297 | if (outPipe[1]!=-1) { |
@@ -1495,7 +1495,7 @@ int shell_main(int argc_l, char **argv_l) | |||
1495 | case 'c': | 1495 | case 'c': |
1496 | input = NULL; | 1496 | input = NULL; |
1497 | if (local_pending_command != 0) | 1497 | if (local_pending_command != 0) |
1498 | fatalError("multiple -c arguments\n"); | 1498 | error_msg_and_die("multiple -c arguments\n"); |
1499 | local_pending_command = xstrdup(argv[optind]); | 1499 | local_pending_command = xstrdup(argv[optind]); |
1500 | optind++; | 1500 | optind++; |
1501 | argv = argv+optind; | 1501 | argv = argv+optind; |