]> git.ipfire.org Git - thirdparty/e2fsprogs.git/commitdiff
[COVERITY] Fix missing return code check for ext2fs_write_inode
authorBrian Behlendorf <behlendorf1@llnl.gov>
Sun, 18 Mar 2007 15:16:33 +0000 (11:16 -0400)
committerTheodore Ts'o <tytso@mit.edu>
Sun, 18 Mar 2007 15:16:33 +0000 (11:16 -0400)
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 <behlendorf1@llnl.gov>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
e2fsck/emptydir.c
resize/ChangeLog
resize/resize2fs.c

index d29f08f9862ed7f5e3af1117d2707325ef86977b..5dbf0214fc7e2cb18d040b19a8388d95918b1b77 100644 (file)
@@ -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;
 }
index e12c00d06289443bbb29a3e479569d9930fb08a0..866eb5565dafa98122c0a2e614ba6bcea3562dad 100644 (file)
@@ -1,3 +1,8 @@
+2007-03-18  Theodore Tso  <tytso@mit.edu>
+
+       * resize2fs.c (check_and_change_inodes): Check to make sure the
+               inode write was sucessful.
+
 2006-12-22  Theodore Tso  <tytso@mit.edu>
 
        * main.c (main): Use the new {add,remove}_error_table comerr
index e1057eca11c9f60727770d0af4abf0d50b7a784d..4b1ca2250b22b60c4c01c39acf669565d6d18ae3 100644 (file)
@@ -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;