aboutsummaryrefslogtreecommitdiff
path: root/src/libdiskfs/ext2.c
diff options
context:
space:
mode:
authorrsc <devnull@localhost>2006-05-04 18:02:13 +0000
committerrsc <devnull@localhost>2006-05-04 18:02:13 +0000
commite77222a4ecdf427c2eed2eb44251b8841ef81b3c (patch)
treedc8c4b5f35272fcc99d4fa0e04ac91173a8d0e59 /src/libdiskfs/ext2.c
parent6802a899956b6c593729c53fe9435dfc89020444 (diff)
downloadplan9port-e77222a4ecdf427c2eed2eb44251b8841ef81b3c.tar.gz
plan9port-e77222a4ecdf427c2eed2eb44251b8841ef81b3c.tar.bz2
plan9port-e77222a4ecdf427c2eed2eb44251b8841ef81b3c.zip
ext2 fixes
Diffstat (limited to 'src/libdiskfs/ext2.c')
-rw-r--r--src/libdiskfs/ext2.c17
1 files changed, 8 insertions, 9 deletions
diff --git a/src/libdiskfs/ext2.c b/src/libdiskfs/ext2.c
index 41ebfcee..8473aa34 100644
--- a/src/libdiskfs/ext2.c
+++ b/src/libdiskfs/ext2.c
@@ -6,7 +6,7 @@
#include <diskfs.h>
#include "ext2.h"
-#define debug 1
+#define debug 0
static int ext2sync(Fsys*);
static void ext2close(Fsys*);
@@ -111,8 +111,10 @@ ext2blockread(Fsys *fsys, u64int vbno)
fprint(2, "loading group: %r...");
return nil;
}
-/* if(debug) */
-/* fprint(2, "group %d bitblock=%d...", bno/fs->blockspergroup, g->bitblock); */
+/*
+ if(debug)
+ fprint(2, "group %d bitblock=%d...", bno/fs->blockspergroup, g->bitblock);
+*/
if((bitb = diskread(fs->disk, fs->blocksize, (u64int)g->bitblock*fs->blocksize)) == nil){
if(debug)
@@ -138,7 +140,7 @@ static Block*
ext2datablock(Ext2 *fs, u32int bno, int size)
{
USED(size);
- return ext2blockread(fs->fsys, bno+fs->firstblock);
+ return ext2blockread(fs->fsys, bno);
}
static Block*
@@ -605,15 +607,12 @@ ext2readdir(Fsys *fsys, SunAuthUnix *au, Nfs3Handle *h, u32int count, u64int coo
if(debug) fprint(2, "bad namlen %d reclen %d at offset %d of %d\n", de->namlen, de->reclen, (int)(p-b->data), b->len);
break;
}
- if(de->name[de->namlen] != 0){
- if(debug) fprint(2, "bad name %d %.*s\n", de->namlen, de->namlen, de->name);
- continue;
- }
- if(debug) print("%s/%d ", de->name, (int)de->ino);
+ if(debug) print("%.*s/%d ", de->namlen, de->name, (int)de->ino);
if((uchar*)de - b->data < off)
continue;
e.fileid = de->ino;
e.name = de->name;
+ e.namelen = de->namlen;
e.cookie = (u64int)i*fs->blocksize + (p - b->data);
if(nfs3entrypack(dp, dep, &ndp, &e) < 0){
done = 1;