top: normal exit code should be 0

This commit is contained in:
albert 2007-05-27 23:56:49 +00:00
parent 94b2a2e910
commit 8e4bf3e115
2 changed files with 7 additions and 5 deletions

1
NEWS
View File

@ -2,6 +2,7 @@ procps-3.2.7 --> procps-3.2.8
ps: document SCHED_BATCH and add "see also" for stime ps: document SCHED_BATCH and add "see also" for stime
ps: man page less ambiguous ps: man page less ambiguous
top: normal exit code should be 0 #341272
procps-3.2.6 --> procps-3.2.7 procps-3.2.6 --> procps-3.2.7

11
top.c
View File

@ -405,11 +405,12 @@ static void bye_bye (FILE *fp, int eno, const char *str)
* Normal end of execution. * Normal end of execution.
* catches: * catches:
* SIGALRM, SIGHUP, SIGINT, SIGPIPE, SIGQUIT and SIGTERM */ * SIGALRM, SIGHUP, SIGINT, SIGPIPE, SIGQUIT and SIGTERM */
static void end_pgm (int dont_care_sig) NORETURN; static void end_pgm (int sig) NORETURN;
static void end_pgm (int dont_care_sig) static void end_pgm (int sig)
{ {
(void)dont_care_sig; if(sig)
bye_bye(stdout, 1, NULL); sig |= 0x80; // for a proper process exit code
bye_bye(stdout, sig, NULL);
} }
@ -653,7 +654,7 @@ static void show_special (int interact, const char *glob)
while ((lin_end = strchr(glob, '\n'))) { while ((lin_end = strchr(glob, '\n'))) {
/* create a local copy we can extend and otherwise abuse */ /* create a local copy we can extend and otherwise abuse */
memcpy(lin, glob, (unsigned)(lin_end - glob)); memcpy(lin, glob, (unsigned)(lin_end - glob)); FIXME -- buffer overflow
/* zero terminate this part and prepare to parse substrings */ /* zero terminate this part and prepare to parse substrings */
lin[lin_end - glob] = '\0'; lin[lin_end - glob] = '\0';
room = Screen_cols; room = Screen_cols;