aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDenys Vlasenko <vda.linux@googlemail.com>2011-03-12 03:12:36 +0100
committerDenys Vlasenko <vda.linux@googlemail.com>2011-03-12 03:12:36 +0100
commitea684c6aaf23ead57fac74c3ceaa651c1ae625ec (patch)
treeda6e00ce493280918139e6d4ae504be23ad8af8c
parent8345b2bd5ea28bd8d07886e615b9c2d5ab35477d (diff)
downloadbusybox-w32-ea684c6aaf23ead57fac74c3ceaa651c1ae625ec.tar.gz
busybox-w32-ea684c6aaf23ead57fac74c3ceaa651c1ae625ec.tar.bz2
busybox-w32-ea684c6aaf23ead57fac74c3ceaa651c1ae625ec.zip
ls: fix handling of symlinks by option -1
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
-rw-r--r--coreutils/ls.c6
-rwxr-xr-xtestsuite/ls.tests10
2 files changed, 14 insertions, 2 deletions
diff --git a/coreutils/ls.c b/coreutils/ls.c
index 19c868ca4..847fdec07 100644
--- a/coreutils/ls.c
+++ b/coreutils/ls.c
@@ -1,6 +1,5 @@
1/* vi: set sw=4 ts=4: */ 1/* vi: set sw=4 ts=4: */
2/* 2/*
3 * tiny-ls.c version 0.1.0: A minimalist 'ls'
4 * Copyright (C) 1996 Brian Candler <B.Candler@pobox.com> 3 * Copyright (C) 1996 Brian Candler <B.Candler@pobox.com>
5 * 4 *
6 * Licensed under GPLv2 or later, see file LICENSE in this source tree. 5 * Licensed under GPLv2 or later, see file LICENSE in this source tree.
@@ -1145,7 +1144,10 @@ int ls_main(int argc UNUSED_PARAM, char **argv)
1145 do { 1144 do {
1146 cur = my_stat(*argv, *argv, 1145 cur = my_stat(*argv, *argv,
1147 /* follow links on command line unless -l, -s or -F: */ 1146 /* follow links on command line unless -l, -s or -F: */
1148 !((all_fmt & (STYLE_LONG|LIST_BLOCKS)) || (option_mask32 & OPT_F)) 1147 !((all_fmt & STYLE_MASK) == STYLE_LONG
1148 || (all_fmt & LIST_BLOCKS)
1149 || (option_mask32 & OPT_F)
1150 )
1149 /* ... or if -H: */ 1151 /* ... or if -H: */
1150 || (option_mask32 & OPT_H) 1152 || (option_mask32 & OPT_H)
1151 ); 1153 );
diff --git a/testsuite/ls.tests b/testsuite/ls.tests
index 1669579e7..e2284658d 100755
--- a/testsuite/ls.tests
+++ b/testsuite/ls.tests
@@ -251,6 +251,16 @@ test x"$CONFIG_UNICODE_SUPPORT" = x"y" \
2510110_5.3.2__U+FFFF_=_ef_bf_bf_=_"?"_______________________________________| 2510110_5.3.2__U+FFFF_=_ef_bf_bf_=_"?"_______________________________________|
252' "" "" 252' "" ""
253 253
254rm -rf ls.testdir 2>/dev/null
255mkdir ls.testdir || exit 1
256
257# testing "test name" "command" "expected result" "file input" "stdin"
258
259testing "ls symlink_to_dir" \
260"touch ls.testdir/A ls.testdir/B; ln -s ls.testdir ls.link; ls ls.link; ls -1 ls.link/; ls -1 ls.link; rm -f ls.link" \
261"A\nB\nA\nB\nA\nB\n" \
262"" ""
263
254# Clean up 264# Clean up
255rm -rf ls.testdir 2>/dev/null 265rm -rf ls.testdir 2>/dev/null
256 266