NTFS: Fix handling of valid but empty mapping pairs array in
authorAnton Altaparmakov <aia21@cantab.net>
Thu, 8 Sep 2005 15:52:31 +0000 (16:52 +0100)
committerAnton Altaparmakov <aia21@cantab.net>
Thu, 8 Sep 2005 15:52:31 +0000 (16:52 +0100)
      fs/ntfs/runlist.c::ntfs_mapping_pairs_decompress().

Signed-off-by: Anton Altaparmakov <aia21@cantab.net>
fs/ntfs/ChangeLog
fs/ntfs/runlist.c

index f4c27f7c1b6a45f71e61e1adacb3bdc41392f03b..8fe38c801166d33a9ea062ab7c3013b5023d3bd1 100644 (file)
@@ -46,6 +46,8 @@ ToDo/Notes:
        - Fix two nasty runlist merging bugs that had gone unnoticed so far.
          Thanks to Stefano Picerno for the bug report.
        - Remove two bogus BUG_ON()s from fs/ntfs/mft.c.
+       - Fix handling of valid but empty mapping pairs array in
+         fs/ntfs/runlist.c::ntfs_mapping_pairs_decompress().
 
 2.1.23 - Implement extension of resident files and make writing safe as well as
         many bug fixes, cleanups, and enhancements...
index d26a1be530c5f824c52e71320881612a2bd880df..e4c4716939de3d73dbe971bb6c3cd9e5bb4e76d4 100644 (file)
@@ -760,6 +760,9 @@ runlist_element *ntfs_mapping_pairs_decompress(const ntfs_volume *vol,
                ntfs_error(vol->sb, "Corrupt attribute.");
                return ERR_PTR(-EIO);
        }
+       /* If the mapping pairs array is valid but empty, nothing to do. */
+       if (!vcn && !*buf)
+               return old_rl;
        /* Current position in runlist array. */
        rlpos = 0;
        /* Allocate first page and set current runlist size to one page. */