[git commit] df: more compatible -P behavior

Denys Vlasenko vda.linux at googlemail.com
Tue Aug 9 02:49:27 UTC 2011


commit: http://git.busybox.net/busybox/commit/?id=00103d32879e98c9bba9b6c14fb36d573badc9e0
branch: http://git.busybox.net/busybox/commit/?id=refs/heads/master

In coreutils df, one of the effects of the option -P is to output
everything in one line. This makes it much easier for a script to parse
the output of df.
This patch adds the same behavior to busybox df.

function                                             old     new   delta
df_main                                              853     863     +10

Signed-off-by: Ralf Friedl <Ralf.Friedl at online.de>
Signed-off-by: Denys Vlasenko <vda.linux at googlemail.com>
---
 coreutils/df.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/coreutils/df.c b/coreutils/df.c
index 846cb38..63dbd61 100644
--- a/coreutils/df.c
+++ b/coreutils/df.c
@@ -212,7 +212,7 @@ int df_main(int argc UNUSED_PARAM, char **argv)
 			{
 				uni_stat_t uni_stat;
 				char *uni_dev = unicode_conv_to_printable(&uni_stat, device);
-				if (uni_stat.unicode_width > 20) {
+				if (uni_stat.unicode_width > 20 && !(opt & OPT_POSIX)) {
 					printf("%s\n%20s", uni_dev, "");
 				} else {
 					printf("%s%*s", uni_dev, 20 - (int)uni_stat.unicode_width, "");
@@ -220,7 +220,7 @@ int df_main(int argc UNUSED_PARAM, char **argv)
 				free(uni_dev);
 			}
 #else
-			if (printf("\n%-20s" + 1, device) > 20)
+			if (printf("\n%-20s" + 1, device) > 20 && !(opt & OPT_POSIX))
 				    printf("\n%-20s", "");
 #endif
 
-- 
1.7.3.4



More information about the busybox-cvs mailing list