aboutsummaryrefslogtreecommitdiff
path: root/procps
diff options
context:
space:
mode:
authorGravatar Denis Vlasenko <vda.linux@googlemail.com>2008-02-10 19:44:20 +0000
committerGravatar Denis Vlasenko <vda.linux@googlemail.com>2008-02-10 19:44:20 +0000
commit04e11c9209f88b878d6bef0b56a4d8345c89c217 (patch)
treedc67a11b65d3d7e4a03b955dd2f5d1b3c7721b2f /procps
parent9304d6ea92f7fc1529669800b75456d549cf1bfc (diff)
downloadbusybox-04e11c9209f88b878d6bef0b56a4d8345c89c217.tar.gz
busybox-04e11c9209f88b878d6bef0b56a4d8345c89c217.tar.bz2
getpot: add support for "a+" specifier for nonnegative int parameters.
By Vladimir Dronnikov <dronnikov at gmail.com>. fdisk and top are converted as an example. function old new delta getopt32 1340 1370 +30 top_main 1137 1120 -17 fdisk_main 3033 2949 -84 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 1/2 up/down: 30/-101) Total: -71 bytes
Diffstat (limited to 'procps')
-rw-r--r--procps/top.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/procps/top.c b/procps/top.c
index 4df58f227..37b6a0cdb 100644
--- a/procps/top.c
+++ b/procps/top.c
@@ -740,7 +740,7 @@ int top_main(int argc, char **argv)
int count, lines, col;
unsigned interval;
int iterations;
- char *sinterval, *siterations;
+ char *sinterval;
SKIP_FEATURE_TOPMEM(const) unsigned scan_mask = TOP_MASK;
#if ENABLE_FEATURE_USE_TERMIOS
struct termios new_settings;
@@ -757,15 +757,12 @@ int top_main(int argc, char **argv)
iterations = 0; /* infinite */
/* do normal option parsing */
- opt_complementary = "-";
- getopt32(argv, "d:n:b", &sinterval, &siterations);
+ opt_complementary = "-:n+";
+ getopt32(argv, "d:n:b", &sinterval, &iterations);
if (option_mask32 & 0x1) {
/* Need to limit it to not overflow poll timeout */
interval = xatou16(sinterval); // -d
}
- if (option_mask32 & 0x2)
- iterations = xatoi_u(siterations); // -n
- //if (option_mask32 & 0x4) // -b
/* change to /proc */
xchdir("/proc");