From af250420caf71a4d787891d8ae49f56299a01201 Mon Sep 17 00:00:00 2001 From: Thadeu Lima de Souza Cascardo Date: Wed, 21 Jan 2009 13:59:36 -0500 Subject: btrfsck: Exit and print error message when not able to open a device If btrfsck is not able to open a device, it segfaults. This fixes it and prints an error message too. --- btrfsck.c | 3 +++ disk-io.c | 1 + 2 files changed, 4 insertions(+) diff --git a/btrfsck.c b/btrfsck.c index c50de7d8..1fcc372e 100644 --- a/btrfsck.c +++ b/btrfsck.c @@ -2075,6 +2075,9 @@ int main(int ac, char **av) radix_tree_init(); root = open_ctree(av[1], 0, 0); + if (root == NULL) + return 1; + ret = check_extents(root); if (ret) goto out; diff --git a/disk-io.c b/disk-io.c index c15cf53e..e49c220d 100644 --- a/disk-io.c +++ b/disk-io.c @@ -530,6 +530,7 @@ struct btrfs_root *open_ctree(const char *filename, u64 sb_bytenr, int writes) fp = open(filename, flags, 0600); if (fp < 0) { + fprintf (stderr, "Coult not open %s\n", filename); return NULL; } root = open_ctree_fd(fp, filename, sb_bytenr, writes); -- cgit v1.2.3