svn commit: trunk/busybox/coreutils

vda at busybox.net vda at busybox.net
Wed Nov 12 21:37:19 UTC 2008


Author: vda
Date: 2008-11-12 13:37:19 -0800 (Wed, 12 Nov 2008)
New Revision: 24021

Log:
seq: shrink by 10 bytes



Modified:
   trunk/busybox/coreutils/seq.c


Changeset:
Modified: trunk/busybox/coreutils/seq.c
===================================================================
--- trunk/busybox/coreutils/seq.c	2008-11-12 21:18:58 UTC (rev 24020)
+++ trunk/busybox/coreutils/seq.c	2008-11-12 21:37:19 UTC (rev 24021)
@@ -15,11 +15,13 @@
 int seq_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
 int seq_main(int argc, char **argv)
 {
+	enum {
+		OPT_w = (1 << 0),
+		OPT_s = (1 << 1),
+	};
 	double last, increment, i;
-	enum { OPT_w = 1, OPT_s };
-	const char *sep = "\n";
-	bool is_consecutive = 0;
-	unsigned opt = getopt32(argv, "+ws:", &sep);
+	const char *sep, *opt_s = "\n";
+	unsigned opt = getopt32(argv, "+ws:", &opt_s);
 	unsigned width = 0;
 
 	argc -= optind;
@@ -40,11 +42,10 @@
 		width = MAX(strlen(*argv), strlen(argv[argc-1]));
 
 	/* You should note that this is pos-5.0.91 semantics, -- FK. */
+	sep = "";
 	while ((increment > 0 && i <= last) || (increment < 0 && i >= last)) {
-		if (is_consecutive++) {
-			printf("%s", sep);
-		}
-		printf("%0*g", width, i);
+		printf("%s%0*g", sep, width, i);
+		sep = opt_s;
 		i += increment;
 	}
 	bb_putchar('\n');




More information about the busybox-cvs mailing list