[dash] report errors from readdir

Change-Id: Ib5b21598ab1717ee9491dcd148f6d7d662a5e6a0
diff --git a/zircon/third_party/uapp/dash/src/bltin/zircon.c b/zircon/third_party/uapp/dash/src/bltin/zircon.c
index d980bcb..b36b248 100644
--- a/zircon/third_party/uapp/dash/src/bltin/zircon.c
+++ b/zircon/third_party/uapp/dash/src/bltin/zircon.c
@@ -106,7 +106,7 @@
         printf("%s %8jd %s\n", modestr(s.st_mode), (intmax_t)s.st_size, dirn);
         return 0;
     }
-    while((de = readdir(dir)) != NULL) {
+    while((errno = 0, de = readdir(dir)) != NULL) {
         memset(&s, 0, sizeof(struct stat));
         if ((strlen(de->d_name) + dirln + 2) <= sizeof(tmp)) {
             snprintf(tmp, sizeof(tmp), "%s/%s", dirn, de->d_name);
@@ -115,6 +115,9 @@
         printf("%s %2ju %8jd %s\n", modestr(s.st_mode), s.st_nlink,
                (intmax_t)s.st_size, de->d_name);
     }
+    if (errno != 0) {
+        perror("readdir");
+    }
     closedir(dir);
     return 0;
 }