Forráskód Böngészése

ext4: fix error handling in ext4_ind_get_blocks()

When an error happened in ext4_splice_branch we failed to notice that
in ext4_ind_get_blocks and mapped the buffer anyway. Fix the problem
by checking for error properly.

Signed-off-by: Jan Kara <jack@suse.cz>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Cc: stable@kernel.org
Jan Kara 15 éve
szülő
commit
2bba702d4f
1 módosított fájl, 1 hozzáadás és 1 törlés
  1. 1 1
      fs/ext4/inode.c

+ 1 - 1
fs/ext4/inode.c

@@ -1022,7 +1022,7 @@ static int ext4_ind_get_blocks(handle_t *handle, struct inode *inode,
 	if (!err)
 		err = ext4_splice_branch(handle, inode, iblock,
 					 partial, indirect_blks, count);
-	else
+	if (err)
 		goto cleanup;
 
 	set_buffer_new(bh_result);