Skip to content
Snippets Groups Projects
Commit 2e51e12f authored by rsc's avatar rsc
Browse files

make ls work on directories

parent 3fd50978
No related branches found
No related tags found
No related merge requests found
......@@ -22,6 +22,3 @@ ide.c: synchronous disk write -> polling disk write. search for
fs.c: split all name operations off in name.c? (starting with namei but move
wdir keep in fs.c)
ls.c: apply tim's patch
......@@ -25,6 +25,7 @@ main(int argc, char *argv[])
int fd;
uint off;
uint sz;
char *p;
if(argc > 2){
puts("Usage: ls [dir]\n");
......@@ -63,8 +64,15 @@ main(int argc, char *argv[])
break;
}
if(dirent.inum != 0) {
// xxx prepend to name the pathname supplied to ls (e.g. .. in ls ..)
if(stat (dirent.name, &st) < 0) {
p = buf;
if(argc == 2) {
strcpy(p, argv[1]);
p += strlen(p);
if(*(p-1) != '/')
*p++ = '/';
}
strcpy(p, dirent.name);
if(stat(buf, &st) < 0) {
printf(1, "stat: failed %s\n", dirent.name);
continue;
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment