From ed20f5fc905145a0673097b539442d2a59491e77 Mon Sep 17 00:00:00 2001 From: Chris Mason Date: Wed, 13 May 2009 11:27:35 -0400 Subject: Fix print-tree.c to skip blocks it can't read instead of aborting --- print-tree.c | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'print-tree.c') diff --git a/print-tree.c b/print-tree.c index 5eb8bfe9..846d9662 100644 --- a/print-tree.c +++ b/print-tree.c @@ -450,6 +450,12 @@ void btrfs_print_tree(struct btrfs_root *root, struct extent_buffer *eb) btrfs_node_blockptr(eb, i), size, btrfs_node_ptr_generation(eb, i)); + if (!next) { + fprintf(stderr, "failed to read %llu in tree %llu\n", + (unsigned long long)btrfs_node_blockptr(eb, i), + (unsigned long long)btrfs_header_owner(eb)); + continue; + } if (btrfs_is_leaf(next) && btrfs_header_level(eb) != 1) BUG(); -- cgit v1.2.3