aboutsummaryrefslogtreecommitdiff
path: root/coreutils/head.c
diff options
context:
space:
mode:
authorsandman <sandman@69ca8d6d-28ef-0310-b511-8ec308f3f277>2002-05-17 22:18:04 +0000
committersandman <sandman@69ca8d6d-28ef-0310-b511-8ec308f3f277>2002-05-17 22:18:04 +0000
commitcc58e00131b21c0323133d3b414208273cdfb16f (patch)
treea948e20b6776ca384779aee363db04c02e541be7 /coreutils/head.c
parent5e633dddba6664d30a4bb852ac57b0de9d4be924 (diff)
downloadbusybox-w32-cc58e00131b21c0323133d3b414208273cdfb16f.tar.gz
busybox-w32-cc58e00131b21c0323133d3b414208273cdfb16f.tar.bz2
busybox-w32-cc58e00131b21c0323133d3b414208273cdfb16f.zip
SUpport old style -[::digit::] options for head and tail
Also make head behave like GNU head (-0/-n 0 is valid) git-svn-id: svn://busybox.net/trunk/busybox@4782 69ca8d6d-28ef-0310-b511-8ec308f3f277
Diffstat (limited to 'coreutils/head.c')
-rw-r--r--coreutils/head.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/coreutils/head.c b/coreutils/head.c
index 4a1677146..c5c11fc7b 100644
--- a/coreutils/head.c
+++ b/coreutils/head.c
@@ -47,12 +47,17 @@ int head_main(int argc, char **argv)
47 FILE *fp; 47 FILE *fp;
48 int need_headers, opt, len = 10, status = EXIT_SUCCESS; 48 int need_headers, opt, len = 10, status = EXIT_SUCCESS;
49 49
50 if (( argc >= 2 ) && ( strlen ( argv [1] ) >= 2 ) && ( argv [1][0] == '-' ) && isdigit ( argv [1][1] )) {
51 len = atoi ( &argv [1][1] );
52 optind = 2;
53 }
54
50 /* parse argv[] */ 55 /* parse argv[] */
51 while ((opt = getopt(argc, argv, "n:")) > 0) { 56 while ((opt = getopt(argc, argv, "n:")) > 0) {
52 switch (opt) { 57 switch (opt) {
53 case 'n': 58 case 'n':
54 len = atoi(optarg); 59 len = atoi(optarg);
55 if (len >= 1) 60 if (len >= 0)
56 break; 61 break;
57 /* fallthrough */ 62 /* fallthrough */
58 default: 63 default: