aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSean Eric Fagan <sef@FreeBSD.org>1997-09-18 06:42:27 +0000
committerSean Eric Fagan <sef@FreeBSD.org>1997-09-18 06:42:27 +0000
commit51f26ac519bcc128cefdde258b1191f434e6bf61 (patch)
tree82b85c3dbfcbb9ae205b2c55d2d937996b28006b
parentd682bccf28c11cda69d1f7ab3530e5e1d4fec3a6 (diff)
Notes
-rw-r--r--bin/ls/ls.c16
1 files changed, 6 insertions, 10 deletions
diff --git a/bin/ls/ls.c b/bin/ls/ls.c
index 7f4e1483c81d5..768af2dc54d76 100644
--- a/bin/ls/ls.c
+++ b/bin/ls/ls.c
@@ -45,7 +45,7 @@ static const char copyright[] =
static char sccsid[] = "@(#)ls.c 8.5 (Berkeley) 4/2/94";
#else
static const char rcsid[] =
- "$Id: ls.c,v 1.15 1997/08/07 15:33:47 steve Exp $";
+ "$Id: ls.c,v 1.16 1997/08/07 22:28:23 steve Exp $";
#endif
#endif /* not lint */
@@ -528,16 +528,12 @@ mastercmp(a, b)
if (a_info == FTS_NS || b_info == FTS_NS)
return (namecmp(*a, *b));
- if (a_info == b_info)
- return (sortfcn(*a, *b));
-
- if ((*a)->fts_level == FTS_ROOTLEVEL)
+ if (a_info != b_info &&
+ (*a)->fts_level == FTS_ROOTLEVEL && !f_listdir) {
if (a_info == FTS_D)
return (1);
- else if (b_info == FTS_D)
+ if (b_info == FTS_D)
return (-1);
- else
- return (sortfcn(*a, *b));
- else
- return (sortfcn(*a, *b));
+ }
+ return (sortfcn(*a, *b));
}