ls: only display directory headers when more than one directory is specified
diff --git a/ls.c b/ls.c
index 3611a87..b132a3c 100644
--- a/ls.c
+++ b/ls.c
@@ -52,6 +52,7 @@
 static int uflag = 0;
 static int first = 1;
 static char sort = 0;
+static size_t ds = 0;
 
 static void ls(const char *, const struct entry *, int);
 
@@ -269,7 +270,7 @@
 	if (!Uflag)
 		qsort(ents, n, sizeof(*ents), entcmp);
 
-	if (path[0] || dir->name[0] != '.')
+	if (ds > 1 && (path[0] || dir->name[0] != '.'))
 		printf("%s:\n", dir->name);
 	for (i = 0; i < n; i++)
 		output(&ents[i]);
@@ -360,7 +361,7 @@
 main(int argc, char *argv[])
 {
 	struct entry ent, *dents, *fents;
-	size_t i, ds, fs;
+	size_t i, fs;
 
 	ARGBEGIN {
 	case '1':