diff --git a/[refs] b/[refs] index 9a6a2c054f0b..8e08309500d0 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 5fb28aa25ab0b71af2e441d68e63ad257e610a04 +refs/heads/master: 4f7874c868eaedd0e64b2f6c800bc852bdc7f38b diff --git a/trunk/fs/udf/super.c b/trunk/fs/udf/super.c index b9e719de0704..28ed3f5ebd70 100644 --- a/trunk/fs/udf/super.c +++ b/trunk/fs/udf/super.c @@ -688,8 +688,12 @@ static int udf_check_anchor_block(struct super_block *sb, sector_t block, uint16_t ident; uint32_t location; - if (varconv) + if (varconv) { + if (udf_fixed_to_variable(block) >= + sb->s_bdev->bd_inode->i_size >> sb->s_blocksize_bits) + return 0; bh = sb_bread(sb, udf_fixed_to_variable(block)); + } else bh = sb_bread(sb, block);