- reuse strings and messages. Saves about 600B
[oweals/busybox.git] / coreutils / length.c
index f2dadd25c8958d231069231b63e77a10332d5682..55fef131b5c3febe917c633aec0d0867d87c532c 100644 (file)
@@ -1,15 +1,19 @@
-#include "internal.h"
+/* vi: set sw=4 ts=4: */
+
+/* BB_AUDIT SUSv3 N/A -- Apparently a busybox (obsolete?) extension. */
+
 #include <stdlib.h>
 #include <string.h>
 #include <stdio.h>
+#include "busybox.h"
 
-extern int
-length_main(int argc, char * * argv)
+int length_main(int argc, char **argv)
 {
-    if ( **(argv+1) == '-' ) {
-       fprintf(stderr, "Usage: length string\n");
-       exit(FALSE);
-    }
-    printf("%d\n", strlen(argv[1]));
-    return( TRUE);
+       if ((argc != 2) ||  (**(++argv) == '-')) {
+           bb_show_usage();
+       }
+
+       bb_printf("%lu\n", (unsigned long)strlen(*argv));
+
+       bb_fflush_stdout_and_exit(EXIT_SUCCESS);
 }