]> git.ipfire.org Git - thirdparty/xfsprogs-dev.git/commitdiff
Fix libxfs SEGV when attempting to mount a non-XFS filesystem.
authorBarry Naujok <bnaujok@sgi.com>
Thu, 30 Nov 2006 14:46:37 +0000 (14:46 +0000)
committerBarry Naujok <bnaujok@sgi.com>
Thu, 30 Nov 2006 14:46:37 +0000 (14:46 +0000)
Merge of master-melb:xfs-cmds:27588a by kenmcd.

  Updated change history

doc/CHANGES
libxfs/init.c

index cf8986f8e918eb5cda5c8b31d5a1d3813f4b5687..f9b5e700ca92f972e0fb6d651b5401845debc2c0 100644 (file)
@@ -1,13 +1,18 @@
+xfsprogs-2.8.x
+       - Fix up libxfs initialisation with bad filesystem.
+         Thanks to Utako Kuzaka <utako@tnes.co.jp> for this.
+
 xfsprogs-2.8.16 (30 October 2006)
        - Fix up an endian problem for nlink setting in phase 7 for xfs_repair.
        
 xfsprogs-2.8.15 (19 October 2006)
        - Fix up nlink checks and repairs in phase 7 for xfs_repair.
        - Remove a bogus LEAFN warning for a single leaf node v2 dir.
+         Thanks to Roger Willcocks <roger@filmlight.ltd.uk> for this.
        
 xfsprogs-2.8.14 (6 October 2006)
        - Fix up the ring command in xfs_db,
-         thanks to Utako Kusaka
+         Thanks to Utako Kuzaka <utako@tnes.co.jp> for this.
        - Set the blocksize on the device to the given sector
          size which is _not_ necessarily 512 bytes;
          idea suggested by Shailendra Tripathi.
index 38a51007d456a6b1237dc2681f8a1e72891ef928..6fe78a6d542b4adfdd9ddbb6b314ede7b68727c8 100644 (file)
@@ -595,8 +595,8 @@ libxfs_mount(
                fprintf(stderr, _("%s: data size check failed\n"), progname);
                if (!(flags & LIBXFS_MOUNT_DEBUGGER))
                        return NULL;
-       }
-       libxfs_putbuf(bp);
+       } else
+               libxfs_putbuf(bp);
 
        if (mp->m_logdev && mp->m_logdev != mp->m_dev) {
                d = (xfs_daddr_t) XFS_FSB_TO_BB(mp, mp->m_sb.sb_logblocks);
@@ -610,7 +610,8 @@ libxfs_mount(
                        if (!(flags & LIBXFS_MOUNT_DEBUGGER))
                                return NULL;
                }
-               libxfs_putbuf(bp);
+               if (bp)
+                       libxfs_putbuf(bp);
        }
 
        /* Initialize realtime fields in the mount structure */