Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 158784
Collapse All | Expand All

(-)file_not_specified_in_diff (-3 / +14 lines)
Line  Link Here
0
--
0
++ b/fs/ext3/dir.c
1
-- a/fs/ext3/dir.c
Lines 154-159 static int ext3_readdir(struct file * fi Link Here
154
			ext3_error (sb, "ext3_readdir",
154
			ext3_error (sb, "ext3_readdir",
155
				"directory #%lu contains a hole at offset %lu",
155
				"directory #%lu contains a hole at offset %lu",
156
				inode->i_ino, (unsigned long)filp->f_pos);
156
				inode->i_ino, (unsigned long)filp->f_pos);
157
			/* corrupt size?  Maybe no more blocks to read */
158
			if (filp->f_pos > inode->i_blocks << 9)
159
				break;
157
			filp->f_pos += sb->s_blocksize - offset;
160
			filp->f_pos += sb->s_blocksize - offset;
158
			continue;
161
			continue;
159
		}
162
		}
160
-- a/fs/ext3/namei.c
163
++ b/fs/ext3/namei.c
Lines 552-557 static int htree_dirblock_to_tree(struct Link Here
552
					   dir->i_sb->s_blocksize -
552
					   dir->i_sb->s_blocksize -
553
					   EXT3_DIR_REC_LEN(0));
553
					   EXT3_DIR_REC_LEN(0));
554
	for (; de < top; de = ext3_next_entry(de)) {
554
	for (; de < top; de = ext3_next_entry(de)) {
555
		if (!ext3_check_dir_entry("htree_dirblock_to_tree", dir, de, bh,
556
					(block<<EXT3_BLOCK_SIZE_BITS(dir->i_sb))
557
						+((char *)de - bh->b_data))) {
558
			/* On error, skip the f_pos to the next block. */
559
			dir_file->f_pos = (dir_file->f_pos |
560
					(dir->i_sb->s_blocksize - 1)) + 1;
561
			brelse (bh);
562
			return count;
563
		}
555
		ext3fs_dirhash(de->name, de->name_len, hinfo);
564
		ext3fs_dirhash(de->name, de->name_len, hinfo);
556
		if ((hinfo->hash < start_hash) ||
565
		if ((hinfo->hash < start_hash) ||
557
		    ((hinfo->hash == start_hash) &&
566
		    ((hinfo->hash == start_hash) &&

Return to bug 158784