From: Erik Larsson Date: Mon, 25 Jan 2016 10:31:12 +0000 (+0100) Subject: volume.c: Fix passing bad pointer type to ntfs_is_[baad|mft]_recordp. X-Git-Tag: android-x86-6.0-r1^2~69^2~11 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=701cd61cca83d504ad5cf14d908e49b32aad18be;p=android-x86%2Fexternal-ntfs-3g.git volume.c: Fix passing bad pointer type to ntfs_is_[baad|mft]_recordp. --- diff --git a/libntfs-3g/volume.c b/libntfs-3g/volume.c index edd76979..dc9aa9ab 100644 --- a/libntfs-3g/volume.c +++ b/libntfs-3g/volume.c @@ -963,13 +963,13 @@ ntfs_volume *ntfs_device_mount(struct ntfs_device *dev, ntfs_mount_flags flags) mrec = (MFT_RECORD*)(m + i * vol->mft_record_size); if (mrec->flags & MFT_RECORD_IN_USE) { - if (ntfs_is_baad_recordp(mrec)) { + if (ntfs_is_baad_recordp(&mrec->magic)) { ntfs_log_error("$MFT error: Incomplete multi " "sector transfer detected in " "'%s'.\n", s); goto io_error_exit; } - if (!ntfs_is_mft_recordp(mrec)) { + if (!ntfs_is_mft_recordp(&mrec->magic)) { ntfs_log_error("$MFT error: Invalid mft " "record for '%s'.\n", s); goto io_error_exit; @@ -977,13 +977,13 @@ ntfs_volume *ntfs_device_mount(struct ntfs_device *dev, ntfs_mount_flags flags) } mrec2 = (MFT_RECORD*)(m2 + i * vol->mft_record_size); if (mrec2->flags & MFT_RECORD_IN_USE) { - if (ntfs_is_baad_recordp(mrec2)) { + if (ntfs_is_baad_recordp(&mrec2->magic)) { ntfs_log_error("$MFTMirr error: Incomplete " "multi sector transfer " "detected in '%s'.\n", s); goto io_error_exit; } - if (!ntfs_is_mft_recordp(mrec2)) { + if (!ntfs_is_mft_recordp(&mrec2->magic)) { ntfs_log_error("$MFTMirr error: Invalid mft " "record for '%s'.\n", s); goto io_error_exit;