aboutsummaryrefslogtreecommitdiff
path: root/libbb
diff options
context:
space:
mode:
Diffstat (limited to 'libbb')
-rw-r--r--libbb/procps.c11
-rw-r--r--libbb/u_signal_names.c15
2 files changed, 25 insertions, 1 deletions
diff --git a/libbb/procps.c b/libbb/procps.c
index e62e5a1f1..476e1f34d 100644
--- a/libbb/procps.c
+++ b/libbb/procps.c
@@ -375,13 +375,22 @@ procps_status_t *procps_scan(procps_status_t* sp, int flags)
375 } 375 }
376 } 376 }
377#else 377#else
378 if (flags & PSSCAN_ARGV0) { 378 if (flags & *PSSCAN_ARGV0|PSSCAN_ARGVN)) {
379 free(sp->argv0); 379 free(sp->argv0);
380 sp->argv0 = NULL; 380 sp->argv0 = NULL;
381 strcpy(filename_tail, "/cmdline"); 381 strcpy(filename_tail, "/cmdline");
382 n = read_to_buf(filename, buf); 382 n = read_to_buf(filename, buf);
383 if (n <= 0) 383 if (n <= 0)
384 break; 384 break;
385#if ENABLE_PGREP || ENABLE_PKILL
386 if (flags & PSSCAN_ARGVN) {
387 do {
388 n--;
389 if (buf[n] == '\0')
390 buf[n] = ' ';
391 } while (n);
392 }
393#endif
385 sp->argv0 = xstrdup(buf); 394 sp->argv0 = xstrdup(buf);
386 } 395 }
387#endif 396#endif
diff --git a/libbb/u_signal_names.c b/libbb/u_signal_names.c
index f8eaea76d..5a6f592aa 100644
--- a/libbb/u_signal_names.c
+++ b/libbb/u_signal_names.c
@@ -159,3 +159,18 @@ const char *get_signame(int number)
159 159
160 return itoa(number); 160 return itoa(number);
161} 161}
162
163
164// Print the whole signal list
165
166void print_signames_and_exit(void)
167{
168 int signo;
169
170 for (signo = 1; signo < ARRAY_SIZE(signals); signo++) {
171 const char *name = signals[signo];
172 if (name[0])
173 puts(name);
174 }
175 exit(EXIT_SUCCESS);
176}