diff options
Diffstat (limited to 'fs/ntfs/attrib.c')
-rw-r--r-- | fs/ntfs/attrib.c | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/fs/ntfs/attrib.c b/fs/ntfs/attrib.c index 92dabdcf2b80..50d3b0c258e3 100644 --- a/fs/ntfs/attrib.c +++ b/fs/ntfs/attrib.c | |||
@@ -179,10 +179,7 @@ int ntfs_map_runlist_nolock(ntfs_inode *ni, VCN vcn, ntfs_attr_search_ctx *ctx) | |||
179 | * ntfs_mapping_pairs_decompress() fails. | 179 | * ntfs_mapping_pairs_decompress() fails. |
180 | */ | 180 | */ |
181 | end_vcn = sle64_to_cpu(a->data.non_resident.highest_vcn) + 1; | 181 | end_vcn = sle64_to_cpu(a->data.non_resident.highest_vcn) + 1; |
182 | if (!a->data.non_resident.lowest_vcn && end_vcn == 1) | 182 | if (unlikely(vcn && vcn >= end_vcn)) { |
183 | end_vcn = sle64_to_cpu(a->data.non_resident.allocated_size) >> | ||
184 | ni->vol->cluster_size_bits; | ||
185 | if (unlikely(vcn >= end_vcn)) { | ||
186 | err = -ENOENT; | 183 | err = -ENOENT; |
187 | goto err_out; | 184 | goto err_out; |
188 | } | 185 | } |