From d2b2a488f996871e6e40789a7890afc2f59730db Mon Sep 17 00:00:00 2001 From: Brian Behlendorf Date: Sun, 18 Mar 2007 11:16:33 -0400 Subject: [PATCH] [COVERITY] Fix missing return code check for ext2fs_write_inode Found 2 of the three places where a return code for ext2fs_write_inode() was not being checked. The second fix in e2fsck/emptydir.c is basically just to shut coverity up even though it really is unnecessary. Coverity ID: 1: Checked Return Signed-off-by: Brian Behlendorf Signed-off-by: "Theodore Ts'o" --- e2fsck/emptydir.c | 4 +++- resize/ChangeLog | 5 +++++ resize/resize2fs.c | 4 +++- 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/e2fsck/emptydir.c b/e2fsck/emptydir.c index d29f08f..5dbf021 100644 --- a/e2fsck/emptydir.c +++ b/e2fsck/emptydir.c @@ -170,7 +170,9 @@ static int fix_directory(ext2_filsys fs, edi->inode.i_size -= edi->freed_blocks * fs->blocksize; edi->inode.i_blocks -= edi->freed_blocks * (fs->blocksize / 512); - (void) ext2fs_write_inode(fs, db->ino, &edi->inode); + retval = ext2fs_write_inode(fs, db->ino, &edi->inode); + if (retval) + return 0; } return 0; } diff --git a/resize/ChangeLog b/resize/ChangeLog index e12c00d..866eb55 100644 --- a/resize/ChangeLog +++ b/resize/ChangeLog @@ -1,3 +1,8 @@ +2007-03-18 Theodore Tso + + * resize2fs.c (check_and_change_inodes): Check to make sure the + inode write was sucessful. + 2006-12-22 Theodore Tso * main.c (main): Use the new {add,remove}_error_table comerr diff --git a/resize/resize2fs.c b/resize/resize2fs.c index e1057ec..4b1ca22 100644 --- a/resize/resize2fs.c +++ b/resize/resize2fs.c @@ -1306,7 +1306,9 @@ static int check_and_change_inodes(ext2_ino_t dir, retval = ext2fs_read_inode(is->rfs->old_fs, dir, &inode); if (retval == 0) { inode.i_mtime = inode.i_ctime = time(0); - ext2fs_write_inode(is->rfs->old_fs, dir, &inode); + is->err = ext2fs_write_inode(is->rfs->old_fs, dir, &inode); + if (is->err) + return DIRENT_ABORT; } return DIRENT_CHANGED; -- 1.8.3.1