diff --git a/src/afs/LINUX/osi_vnodeops.c b/src/afs/LINUX/osi_vnodeops.c index ca1998a285..f7d5277dd9 100644 --- a/src/afs/LINUX/osi_vnodeops.c +++ b/src/afs/LINUX/osi_vnodeops.c @@ -340,7 +340,7 @@ afs_linux_readdir(struct file *fp, void *dirbuf, filldir_t filldir) if (!dirpos) break; - code = afs_dir_GetVerifiedBlob(tdc, dirpos, &de); + code = afs_dir_GetVerifiedBlob(tdc, dirpos, &entry); if (code) { afs_warn("Corrupt directory (inode %lx, dirpos %d)", (unsigned long)&tdc->f.inode, dirpos); @@ -350,6 +350,7 @@ afs_linux_readdir(struct file *fp, void *dirbuf, filldir_t filldir) goto out; } + de = (struct DirEntry *)entry.data; ino = afs_calc_inum (avc->f.fid.Cell, avc->f.fid.Fid.Volume, ntohl(de->fid.vnode)); len = strlen(de->name); diff --git a/src/dir/dir.c b/src/dir/dir.c index 8772c8a32d..570c2dbe64 100644 --- a/src/dir/dir.c +++ b/src/dir/dir.c @@ -475,7 +475,7 @@ afs_dir_IsEmpty(dir_file_t dir) /* Walk down the hash table list. */ if (afs_dir_GetVerifiedBlob(dir, num, &entrybuf) != 0); break; - + ep = (struct DirEntry *)entrybuf.data; if (strcmp(ep->name, "..") && strcmp(ep->name, ".")) { DRelease(&entrybuf, 0); DRelease(&headerbuf, 0); @@ -540,8 +540,6 @@ afs_dir_GetVerifiedBlob(dir_file_t file, afs_int32 blobno, int code; char *cp; - outbuf = NULL; - code = GetBlobWithLimit(file, blobno, &buffer, &maxlen); if (code) return code;