aboutsummaryrefslogtreecommitdiff
path: root/libbb
diff options
context:
space:
mode:
authorRon Yorston <rmy@pobox.com>2012-10-10 12:56:24 +0100
committerRon Yorston <rmy@pobox.com>2012-10-10 12:56:24 +0100
commit981a6fcd1323a77d5829c7d574bb40fd1b96dc4d (patch)
treea1e3aadf4de65d7a525c7dd6172546ff577777d5 /libbb
parent19436cc0ee509a5e356c04f0026919abd417bec4 (diff)
parenteab343e7e1e5331df833aa69f14584e4a6c738f1 (diff)
downloadbusybox-w32-981a6fcd1323a77d5829c7d574bb40fd1b96dc4d.tar.gz
busybox-w32-981a6fcd1323a77d5829c7d574bb40fd1b96dc4d.tar.bz2
busybox-w32-981a6fcd1323a77d5829c7d574bb40fd1b96dc4d.zip
Merge branch 'busybox' into merge
Diffstat (limited to 'libbb')
-rw-r--r--libbb/get_shell_name.c2
-rw-r--r--libbb/lineedit.c3
-rw-r--r--libbb/procps.c2
-rw-r--r--libbb/signals.c6
4 files changed, 8 insertions, 5 deletions
diff --git a/libbb/get_shell_name.c b/libbb/get_shell_name.c
index c930afd94..5aebe9cdc 100644
--- a/libbb/get_shell_name.c
+++ b/libbb/get_shell_name.c
@@ -8,7 +8,7 @@
8 8
9#include "libbb.h" 9#include "libbb.h"
10 10
11const char *get_shell_name(void) 11const char* FAST_FUNC get_shell_name(void)
12{ 12{
13 struct passwd *pw; 13 struct passwd *pw;
14 char *shell; 14 char *shell;
diff --git a/libbb/lineedit.c b/libbb/lineedit.c
index 65dffe56d..8a276d941 100644
--- a/libbb/lineedit.c
+++ b/libbb/lineedit.c
@@ -2754,7 +2754,8 @@ int FAST_FUNC read_line_input(const char* prompt, char* command, int maxsize)
2754{ 2754{
2755 fputs(prompt, stdout); 2755 fputs(prompt, stdout);
2756 fflush_all(); 2756 fflush_all();
2757 fgets(command, maxsize, stdin); 2757 if (!fgets(command, maxsize, stdin))
2758 return -1;
2758 return strlen(command); 2759 return strlen(command);
2759} 2760}
2760 2761
diff --git a/libbb/procps.c b/libbb/procps.c
index 1080e0165..c6977da51 100644
--- a/libbb/procps.c
+++ b/libbb/procps.c
@@ -586,6 +586,8 @@ void FAST_FUNC read_cmdline(char *buf, int col, unsigned pid, const char *comm)
586 buf[sz] = '\0'; 586 buf[sz] = '\0';
587 while (--sz >= 0 && buf[sz] == '\0') 587 while (--sz >= 0 && buf[sz] == '\0')
588 continue; 588 continue;
589 /* Prevent basename("process foo/bar") = "bar" */
590 strchrnul(buf, ' ')[0] = '\0';
589 base = bb_basename(buf); /* before we replace argv0's NUL with space */ 591 base = bb_basename(buf); /* before we replace argv0's NUL with space */
590 while (sz >= 0) { 592 while (sz >= 0) {
591 if ((unsigned char)(buf[sz]) < ' ') 593 if ((unsigned char)(buf[sz]) < ' ')
diff --git a/libbb/signals.c b/libbb/signals.c
index cdc37b1ef..56512473a 100644
--- a/libbb/signals.c
+++ b/libbb/signals.c
@@ -39,7 +39,7 @@ void FAST_FUNC bb_signals(int sigs, void (*f)(int))
39 39
40 while (sigs) { 40 while (sigs) {
41 if (sigs & bit) { 41 if (sigs & bit) {
42 sigs &= ~bit; 42 sigs -= bit;
43 signal(sig_no, f); 43 signal(sig_no, f);
44 } 44 }
45 sig_no++; 45 sig_no++;
@@ -60,7 +60,7 @@ void FAST_FUNC bb_signals_recursive_norestart(int sigs, void (*f)(int))
60 60
61 while (sigs) { 61 while (sigs) {
62 if (sigs & bit) { 62 if (sigs & bit) {
63 sigs &= ~bit; 63 sigs -= bit;
64 sigaction_set(sig_no, &sa); 64 sigaction_set(sig_no, &sa);
65 } 65 }
66 sig_no++; 66 sig_no++;
@@ -97,7 +97,7 @@ void FAST_FUNC kill_myself_with_sig(int sig)
97 signal(sig, SIG_DFL); 97 signal(sig, SIG_DFL);
98 sig_unblock(sig); 98 sig_unblock(sig);
99 raise(sig); 99 raise(sig);
100 _exit(EXIT_FAILURE); /* Should not reach it */ 100 _exit(sig | 128); /* Should not reach it */
101} 101}
102 102
103void FAST_FUNC signal_SA_RESTART_empty_mask(int sig, void (*handler)(int)) 103void FAST_FUNC signal_SA_RESTART_empty_mask(int sig, void (*handler)(int))