Btrfs-progs: fix segmentation fault of "btrfs check"
authorTsutomu Itoh <t-itoh@jp.fujitsu.com>
Wed, 27 Feb 2013 02:31:54 +0000 (11:31 +0900)
committerDavid Sterba <dsterba@suse.cz>
Wed, 27 Feb 2013 15:42:08 +0000 (16:42 +0100)
Segmentation fault occurred in the following command.

 # btrfs check /dev/sdc7
 No valid Btrfs found on /dev/sdc7
 Segmentation fault (core dumped)

Fix it.

Signed-off-by: Tsutomu Itoh <t-itoh@jp.fujitsu.com>
cmds-check.c

index d63e945..5d2e9ed 100644 (file)
@@ -3610,12 +3610,12 @@ int cmd_check(int argc, char **argv)
        }
 
        info = open_ctree_fs_info(argv[optind], bytenr, rw, 1);
-       uuid_unparse(info->super_copy.fsid, uuidbuf);
-       printf("Checking filesystem on %s\nUUID: %s\n", argv[optind], uuidbuf);
-
        if (info == NULL)
                return 1;
 
+       uuid_unparse(info->super_copy.fsid, uuidbuf);
+       printf("Checking filesystem on %s\nUUID: %s\n", argv[optind], uuidbuf);
+
        if (!extent_buffer_uptodate(info->tree_root->node) ||
            !extent_buffer_uptodate(info->dev_root->node) ||
            !extent_buffer_uptodate(info->extent_root->node) ||