diff --git a/libntfs/volume.c b/libntfs/volume.c index d1049e1f..eb426a86 100644 --- a/libntfs/volume.c +++ b/libntfs/volume.c @@ -792,7 +792,7 @@ ntfs_volume *ntfs_device_mount(struct ntfs_device *dev, unsigned long rwflag) vinf = (VOLUME_INFORMATION*)(le16_to_cpu(a->value_offset) + (char*)a); /* Sanity checks. */ if ((char*)vinf + le32_to_cpu(a->value_length) > (char*)ctx->mrec + - le16_to_cpu(ctx->mrec->bytes_in_use) || + le32_to_cpu(ctx->mrec->bytes_in_use) || le16_to_cpu(a->value_offset) + le32_to_cpu( a->value_length) > le32_to_cpu(a->length)) { Dputs(FAILED);