aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRon Yorston <rmy@pobox.com>2019-02-16 10:22:31 +0000
committerDenys Vlasenko <vda.linux@googlemail.com>2019-02-19 17:08:39 +0100
commite563f9e851c78f5c13cb9828ddb11ca981fd6331 (patch)
tree0e277c457ebd0bcc24712c66bc964ec9e26e72aa
parent8502fa8747e962f69084be09ff8b930e0fb0c449 (diff)
downloadbusybox-w32-e563f9e851c78f5c13cb9828ddb11ca981fd6331.tar.gz
busybox-w32-e563f9e851c78f5c13cb9828ddb11ca981fd6331.tar.bz2
busybox-w32-e563f9e851c78f5c13cb9828ddb11ca981fd6331.zip
du: don't count duplicate arguments. Closes 5288
Since coreutils 8.6 (2010-10-15) du no longer counts duplicate arguments. Revert the relevant part of commit 618a3027ed (du: fix "du /dir /dir" case). function old new delta du_main 302 297 -5 reset_ino_dev_hashtable 78 - -78 ------------------------------------------------------------------------------ (add/remove: 0/1 grow/shrink: 0/1 up/down: 0/-83) Total: -83 bytes Signed-off-by: Ron Yorston <rmy@pobox.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
-rw-r--r--coreutils/du.c4
-rw-r--r--libbb/inode_hash.c2
2 files changed, 3 insertions, 3 deletions
diff --git a/coreutils/du.c b/coreutils/du.c
index 6d737fbfb..d14d9e4ea 100644
--- a/coreutils/du.c
+++ b/coreutils/du.c
@@ -290,11 +290,11 @@ int du_main(int argc UNUSED_PARAM, char **argv)
290 total = 0; 290 total = 0;
291 do { 291 do {
292 total += du(*argv); 292 total += du(*argv);
293 /* otherwise du /dir /dir won't show /dir twice: */
294 reset_ino_dev_hashtable();
295 G.slink_depth = slink_depth_save; 293 G.slink_depth = slink_depth_save;
296 } while (*++argv); 294 } while (*++argv);
297 295
296 if (ENABLE_FEATURE_CLEAN_UP)
297 reset_ino_dev_hashtable();
298 if (opt & OPT_c_total) 298 if (opt & OPT_c_total)
299 print(total, "total"); 299 print(total, "total");
300 300
diff --git a/libbb/inode_hash.c b/libbb/inode_hash.c
index 4142813e3..a125244ca 100644
--- a/libbb/inode_hash.c
+++ b/libbb/inode_hash.c
@@ -77,7 +77,7 @@ void FAST_FUNC add_to_ino_dev_hashtable(const struct stat *statbuf, const char *
77 ino_dev_hashtable[i] = bucket; 77 ino_dev_hashtable[i] = bucket;
78} 78}
79 79
80#if ENABLE_DU || ENABLE_FEATURE_CLEAN_UP 80#if ENABLE_FEATURE_CLEAN_UP
81/* Clear statbuf hash table */ 81/* Clear statbuf hash table */
82void FAST_FUNC reset_ino_dev_hashtable(void) 82void FAST_FUNC reset_ino_dev_hashtable(void)
83{ 83{