+++ /dev/null
-Flush all open files after showing files
-By Yauheni Kaliuta <yauheni.kaliuta@nokia.com>
-
-Ported to BusyBox 1.19 by Dennis Groenen <tj.groenen@gmail.com> - 2011-08-19
----
-
---- a/coreutils/ls.c
-+++ b/coreutils/ls.c
-@@ -701,6 +701,7 @@ static void display_files(struct dnode *
- }
- }
- putchar('\n');
-+ fflush(NULL);
- column = 0;
- }
- }
+++ /dev/null
-From d7db3501c813eb7083766dc86d56f449701f6f88 Mon Sep 17 00:00:00 2001
-From: Dennis Groenen <tj.groenen@gmail.com>
-Date: Sat, 25 Aug 2012 12:23:24 +0200
-Subject: [PATCH] disable redrawing lineedit window after SIGWINCH signal
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-This fix portrait mode in busybox shell. Patch by Pali Rohár for Maemo's CSSU,
-forward-ported to BusyBox 1.20.2 for busybox-power
----
- libbb/lineedit.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/libbb/lineedit.c b/libbb/lineedit.c
-index b89748a..9f16cac 100644
---- a/libbb/lineedit.c
-+++ b/libbb/lineedit.c
-@@ -1897,7 +1897,7 @@ static void win_changed(int nsig)
-
- get_terminal_width_height(0, &width, NULL);
- //FIXME: cmdedit_setwidth() -> redraw() -> printf() -> KABOOM! (we are in signal handler!)
-- cmdedit_setwidth(width, /*redraw_flg:*/ nsig);
-+ cmdedit_setwidth(width, /*redraw_flg:*/ 0);
-
- errno = sv_errno;
- }
---
-1.7.11.5
-
+++ /dev/null
-From: Bastian Blank <waldi@debian.org>
-Description: skip non-existing devices in inittab
-Bug-Debian: http://bugs.debian.org/541115
-Forwarded: no
-
-This patch causes init silently skip running processes from inittab if
-the terminal name is specified but the corresponding device file does not
-exist.
-
---- a/init/init.c
-+++ b/init/init.c
-@@ -563,6 +563,8 @@ static void run_actions(int action_type)
- for (a = init_action_list; a; a = a->next) {
- if (!(a->action_type & action_type))
- continue;
-+ if (a->terminal[0] && access(a->terminal, R_OK | W_OK))
-+ continue;
-
- if (a->action_type & (SYSINIT | WAIT | ONCE | CTRLALTDEL | SHUTDOWN)) {
- pid_t pid = run(a);
+++ /dev/null
-Parse the complete hostname when set from a file (busybox-1.10.2 behaviour)
-By Dennis Groenen <tj.groenen@gmail.com> - 2011-08-19
----
-
---- a/networking/hostname.c
-+++ b/networking/hostname.c
-@@ -35,7 +35,7 @@ static void do_sethostname(char *s, int
- // return;
- if (isfile) {
- parser_t *parser = config_open2(s, xfopen_for_read);
-- while (config_read(parser, &s, 1, 1, "# \t", PARSE_NORMAL & ~PARSE_GREEDY)) {
-+ while (config_read(parser, &s, 1, 1, "# \t", PARSE_NORMAL)) {
- do_sethostname(s, 0);
- }
- if (ENABLE_FEATURE_CLEAN_UP)
+++ /dev/null
-Make "ps" accept (but ignore) all missing common options expected to be supported by "ps"
-This is required to not break scripts which are using these options
-
-By Dennis Groenen <tj.groenen@gmail.com> - 2011-08-19
----
-
---- a/procps/ps.c
-+++ b/procps/ps.c
-@@ -645,7 +645,7 @@ int ps_main(int argc UNUSED_PARAM, char
- int w_count = 0;
- opt_complementary = "-:ww";
- opts = getopt32(argv, IF_SELINUX("Z")IF_FEATURE_SHOW_THREADS("T")IF_FEATURE_PS_LONG("l")
-- "w", &w_count);
-+ "w""ANdeagrxCGUgpstuUojOFfsvuXVmMLScnfyH", &w_count, NULL);
- /* if w is given once, GNU ps sets the width to 132,
- * if w is given more than once, it is "unlimited"
- */
-@@ -660,7 +660,8 @@ int ps_main(int argc UNUSED_PARAM, char
- # else
- /* -w is not supported, only -Z and/or -T */
- opt_complementary = "-";
-- opts = getopt32(argv, IF_SELINUX("Z")IF_FEATURE_SHOW_THREADS("T")IF_FEATURE_PS_LONG("l"));
-+ opts = getopt32(argv, IF_SELINUX("Z")IF_FEATURE_SHOW_THREADS("T")IF_FEATURE_PS_LONG("l")
-+ "ANdeagrxCGUgpstuUojOFfsvuXVmMLScnfyHw", NULL);
- # endif
-
- # if ENABLE_SELINUX
# Updated patches from Debian Sid; these are also in Nokia's busybox sources
# Source: http://ftp.de.debian.org/debian/pool/main/b/busybox/busybox_1.20.0-4.debian.tar.gz
shell-ash-export-HOME.patch
-init-console.patch
version.patch
# Patches ported from Nokia's busybox sources
05thumb.patch
-06ls.patch
busybox-zero-ifr.ifr_hwaddr.sa_data.patch
-top-display-rss.patch
-
-# Patches from CSSU
-cssu/busybox-portrait.patch
-
-# New patches to bring back Maemo's old busybox behaviour
-supress-bad-number.patch
-parse-complete-hostname.patch
-ps-accept-and-ignore-missing-options.patch
# New patches as per reported issues by users
showkey-default-option.patch
+++ /dev/null
-Do not show a message when testing an uninitialized variable (busybox-1.10.2 behaviour)
-By Dennis Groenen <tj.groenen@gmail.com> - 2011-08-19
----
-
---- a/coreutils/test.c
-+++ b/coreutils/test.c
-@@ -436,7 +436,7 @@ static number_t getn(const char *s)
- if (errno != 0)
- syntax(s, "out of range");
-
-- if (p == s || *(skip_whitespace(p)) != '\0')
-+ if (*(skip_whitespace(p)) != '\0')
- syntax(s, "bad number");
-
- return r;
+++ /dev/null
-Change top to display RSS instead of VSZ.
-By Alexander Shishkin <ext-alexander.shishkin@nokia.com>
-
-Ported to BusyBox 1.19 by Dennis Groenen <tj.groenen@gmail.com> - 2011-08-19
----
-
---- a/procps/top.c
-+++ b/procps/top.c
-@@ -54,7 +54,7 @@
-
-
- typedef struct top_status_t {
-- unsigned long vsz;
-+ unsigned long rss;
- #if ENABLE_FEATURE_TOP_CPU_USAGE_PERCENTAGE
- unsigned long ticks;
- unsigned pcpu; /* delta of ticks */
-@@ -166,8 +166,8 @@ static int pid_sort(top_status_t *P, top
- static int mem_sort(top_status_t *P, top_status_t *Q)
- {
- /* We want to avoid unsigned->signed and truncation errors */
-- if (Q->vsz < P->vsz) return -1;
-- return Q->vsz != P->vsz; /* 0 if ==, 1 if > */
-+ if (Q->rss < P->rss) return -1;
-+ return Q->rss != P->rss; /* 0 if ==, 1 if > */
- }
-
-
-@@ -538,7 +538,7 @@ static NOINLINE void display_process_lis
-
- /* what info of the processes is shown */
- printf(OPT_BATCH_MODE ? "%.*s" : "\033[7m%.*s\033[0m", scr_width,
-- " PID PPID USER STAT VSZ %VSZ"
-+ " PID PPID USER STAT RSS %MEM"
- IF_FEATURE_TOP_SMP_PROCESS(" CPU")
- IF_FEATURE_TOP_CPU_USAGE_PERCENTAGE(" %CPU")
- " COMMAND");
-@@ -556,7 +556,7 @@ static NOINLINE void display_process_lis
- # define FMT "%4u%%"
- #endif
- /*
-- * %VSZ = s->vsz/MemTotal
-+ * %MEM = s->vsz/MemTotal
- */
- pmem_shift = BITS_PER_INT-11;
- pmem_scale = UPSCALE*(1U<<(BITS_PER_INT-11)) / total_memory;
-@@ -607,16 +607,16 @@ static NOINLINE void display_process_lis
- s = top;
- while (--lines_rem >= 0) {
- unsigned col;
-- CALC_STAT(pmem, (s->vsz*pmem_scale + pmem_half) >> pmem_shift);
-+ CALC_STAT(pmem, (s->rss*pmem_scale + pmem_half) >> pmem_shift);
- #if ENABLE_FEATURE_TOP_CPU_USAGE_PERCENTAGE
- CALC_STAT(pcpu, (s->pcpu*pcpu_scale + pcpu_half) >> pcpu_shift);
- #endif
-
-- if (s->vsz >= 100000)
-- sprintf(vsz_str_buf, "%6ldm", s->vsz/1024);
-+ if (s->rss >= 100000)
-+ sprintf(vsz_str_buf, "%6ldm", s->rss/1024);
- else
-- sprintf(vsz_str_buf, "%7ld", s->vsz);
-- /* PID PPID USER STAT VSZ %VSZ [%CPU] COMMAND */
-+ sprintf(vsz_str_buf, "%7ld", s->rss);
-+ /* PID PPID USER STAT RSS %MEM %CPU COMMAND */
- col = snprintf(line_buf, scr_width,
- "\n" "%5u%6u %-8.8s %s%s" FMT
- IF_FEATURE_TOP_SMP_PROCESS(" %3d")
-@@ -1109,7 +1109,7 @@ int top_main(int argc UNUSED_PARAM, char
- top = xrealloc_vector(top, 6, ntop++);
- top[n].pid = p->pid;
- top[n].ppid = p->ppid;
-- top[n].vsz = p->vsz;
-+ top[n].rss = p->rss;
- #if ENABLE_FEATURE_TOP_CPU_USAGE_PERCENTAGE
- top[n].ticks = p->stime + p->utime;
- #endif