diff --git a/fs/btrfs/tree-log.c b/fs/btrfs/tree-log.c index cda7bb2e9a1e5ab43e154a38efba93bdaed60825..7c900eb27cf8b7105721e3fc911a302d192e19c6 100644 --- a/fs/btrfs/tree-log.c +++ b/fs/btrfs/tree-log.c @@ -2528,7 +2528,9 @@ static noinline int replay_dir_deletes(struct btrfs_trans_handle *trans, else { ret = find_dir_range(log, path, dirid, key_type, &range_start, &range_end); - if (ret != 0) + if (ret < 0) + goto out; + else if (ret > 0) break; }