ext4: check error return from ext4_write_inline_data_end()

The function ext4_write_inline_data_end() can return an error.  So we
need to assign it to a signed integer variable to check for an error
return (since copied is an unsigned int).

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Cc: Zheng Liu <wenqing.lz@taobao.com>
Cc: stable@vger.kernel.org
This commit is contained in:
Theodore Ts'o 2013-07-01 08:12:39 -04:00
parent 353eefd338
commit 42c832debb
1 changed files with 7 additions and 4 deletions

View File

@ -1061,10 +1061,13 @@ static int ext4_write_end(struct file *file,
}
}
if (ext4_has_inline_data(inode))
copied = ext4_write_inline_data_end(inode, pos, len,
copied, page);
else
if (ext4_has_inline_data(inode)) {
ret = ext4_write_inline_data_end(inode, pos, len,
copied, page);
if (ret < 0)
goto errout;
copied = ret;
} else
copied = block_write_end(file, mapping, pos,
len, copied, page, fsdata);