mirror of
git://git.code.sf.net/p/zsh/code
synced 2025-09-02 10:01:11 +02:00
zsh-workers/9750
This commit is contained in:
parent
d2cffa8c27
commit
90c88e53df
3 changed files with 14 additions and 11 deletions
|
@ -1230,12 +1230,12 @@ pmjobstate(int job)
|
|||
else
|
||||
state = "done";
|
||||
} else if (WIFSTOPPED(pn->status))
|
||||
state = sigmsg[WSTOPSIG(pn->status)];
|
||||
state = sigmsg(WSTOPSIG(pn->status));
|
||||
else if (WCOREDUMP(pn->status))
|
||||
sprintf((state = buf2), "%s (core dumped)",
|
||||
sigmsg[WTERMSIG(pn->status)]);
|
||||
sigmsg(WTERMSIG(pn->status)));
|
||||
else
|
||||
state = sigmsg[WTERMSIG(pn->status)];
|
||||
state = sigmsg(WTERMSIG(pn->status));
|
||||
|
||||
sprintf(buf, ":%d=%s", pn->pid, state);
|
||||
|
||||
|
|
14
Src/jobs.c
14
Src/jobs.c
|
@ -615,7 +615,7 @@ printjob(Job jn, int lng, int synch)
|
|||
if (pn->status != SP_RUNNING) {
|
||||
if (WIFSIGNALED(pn->status)) {
|
||||
sig = WTERMSIG(pn->status);
|
||||
llen = strlen(sigmsg[sig]);
|
||||
llen = strlen(sigmsg(sig));
|
||||
if (WCOREDUMP(pn->status))
|
||||
llen += 14;
|
||||
if (llen > len)
|
||||
|
@ -626,8 +626,8 @@ printjob(Job jn, int lng, int synch)
|
|||
doputnl = 1;
|
||||
} else if (WIFSTOPPED(pn->status)) {
|
||||
sig = WSTOPSIG(pn->status);
|
||||
if ((int)strlen(sigmsg[sig]) > len)
|
||||
len = strlen(sigmsg[sig]);
|
||||
if ((int)strlen(sigmsg(sig)) > len)
|
||||
len = strlen(sigmsg(sig));
|
||||
if (job == thisjob && sig == SIGTSTP)
|
||||
doputnl = 1;
|
||||
} else if (isset(PRINTEXITVALUE) && isset(SHINSTDIN) &&
|
||||
|
@ -695,13 +695,13 @@ printjob(Job jn, int lng, int synch)
|
|||
else
|
||||
fprintf(fout, "done%*s", len - 4 + 2, "");
|
||||
} else if (WIFSTOPPED(pn->status))
|
||||
fprintf(fout, "%-*s", len + 2, sigmsg[WSTOPSIG(pn->status)]);
|
||||
fprintf(fout, "%-*s", len + 2, sigmsg(WSTOPSIG(pn->status)));
|
||||
else if (WCOREDUMP(pn->status))
|
||||
fprintf(fout, "%s (core dumped)%*s",
|
||||
sigmsg[WTERMSIG(pn->status)],
|
||||
(int)(len - 14 + 2 - strlen(sigmsg[WTERMSIG(pn->status)])), "");
|
||||
sigmsg(WTERMSIG(pn->status)),
|
||||
(int)(len - 14 + 2 - strlen(sigmsg(WTERMSIG(pn->status)))), "");
|
||||
else
|
||||
fprintf(fout, "%-*s", len + 2, sigmsg[WTERMSIG(pn->status)]);
|
||||
fprintf(fout, "%-*s", len + 2, sigmsg(WTERMSIG(pn->status)));
|
||||
for (; pn != qn; pn = pn->next)
|
||||
fprintf(fout, (pn->next) ? "%s | " : "%s", pn->text);
|
||||
putc('\n', fout);
|
||||
|
|
|
@ -63,7 +63,10 @@ END {
|
|||
printf "#include %czsh.mdh%c\n", 34, 34
|
||||
printf "\n"
|
||||
printf "/**/\n"
|
||||
printf "mod_export char *sigmsg[SIGCOUNT+2] = {\n"
|
||||
printf "#define sigmsg(sig) ((sig) <= SIGCOUNT ? sig_msg[sig] : %c%s%c)", 34, "unknown signal", 34
|
||||
printf "\n"
|
||||
printf "/**/\n"
|
||||
printf "mod_export char *sig_msg[SIGCOUNT+2] = {\n"
|
||||
printf "\t%c%s%c,\n", 34, "done", 34
|
||||
|
||||
for (i = 1; i <= 0 + max; i++)
|
||||
|
|
Loading…
Reference in a new issue