e2fsprogs/e2fsck
Lukas Czerner 47fee2ef6a e2fsprogs: introduce ext2fs_close_free() helper
Currently there are many uses of ext2fs_close() which might be wrong.
First of all ext2fs_close() does not set the ext2_filsys pointer to NULL
so the caller is responsible for clearing it, however there are some
cases there we do not do it.

Second of all very small number of users of ext2fs_close() actually
check the return value. If there is a problem in ext2fs_close() it will
not even free the ext2_filsys structure, but majority of users expect it
to do so.

To fix both problems this commit introduces a new helper
ext2fs_close_free() which will not only check for the return value and
free the ext2_filsys structure if the call to ext2fs_close2() failed,
but it will also set the ext2_filsys pointer to NULL.

Replace every use of ext2fs_close() in e2fsprogs tools with
ext2fs_close_free() - there is no real reason to keep using
ext2fs_close().

Signed-off-by: Lukas Czerner <lczerner@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com>
2014-07-05 21:06:48 -04:00
..
CHANGES Many files: 1997-04-26 13:21:57 +00:00
Makefile.in e2fsprogs: remove checker infrastructure 2014-07-04 23:59:30 -04:00
Makefile.pq Many files: 1997-11-14 05:23:04 +00:00
argv_parse.c Shorten compile commands run by the build system 2011-09-18 17:34:37 -04:00
argv_parse.h Remove trailing whitespace for the entire source tree 2008-08-27 23:07:54 -04:00
badblocks.c e2fsck: fix memory leak on error path in read_bad_blocks_files() 2014-01-07 09:10:24 -05:00
crc32.c Shorten compile commands run by the build system 2011-09-18 17:34:37 -04:00
crc32defs.h Only use __builtin_expect if __GNUC__ > 3 2008-07-13 16:06:56 -04:00
dict.c Shorten compile commands run by the build system 2011-09-18 17:34:37 -04:00
dict.h Fixx gcc -Wall nitpicks. 2003-07-06 00:36:48 -04:00
dirinfo.c Save and restore umask around calls to mkstemp() 2014-01-09 15:18:44 -05:00
dx_dirinfo.c Shorten compile commands run by the build system 2011-09-18 17:34:37 -04:00
e2fsck.8.in Fix spelling typo's in man pages for tune2fs and mke2fs 2012-07-14 19:58:06 -04:00
e2fsck.c Clean up sparse warnings 2013-12-16 18:56:36 -05:00
e2fsck.conf.5.in e2fsck.conf: clarify man page's description of accept_time_fudge 2014-01-04 19:11:36 -05:00
e2fsck.h quota: integrate mkquota.h into quotaio.h 2014-05-13 10:13:04 -04:00
ea_refcount.c e2fsck: fix printf conversion specs in ea_refcount.c 2013-12-24 22:50:23 -05:00
ehandler.c e2fsck: fix potential segv when handling a read error in a superblock 2012-08-06 18:46:42 -04:00
emptydir.c Shorten compile commands run by the build system 2011-09-18 17:34:37 -04:00
extend.c Shorten compile commands run by the build system 2011-09-18 17:34:37 -04:00
flushb.c Shorten compile commands run by the build system 2011-09-18 17:34:37 -04:00
gen_crc32table.c Fix gcc -Wall warnings in e2fsck 2008-06-07 11:04:10 -04:00
iscan.c debugfs, e2fsck: fix s_desc_size handling 2013-12-24 22:50:19 -05:00
jfs_user.h Allow e2fsprogs to be built using the clang (LLVM) frontend 2012-09-09 21:35:39 -04:00
journal.c e2fsck: make a prompt message simpler and thus translatable 2014-06-03 22:04:28 -04:00
logfile.c e2fsck: do not crash on long log file names 2013-01-08 20:36:48 -05:00
message.c e2fsck: sort the abbreviations better 2014-06-03 22:04:33 -04:00
mtrace.awk Many files: 1997-04-26 13:21:57 +00:00
mtrace.c Shorten compile commands run by the build system 2011-09-18 17:34:37 -04:00
mtrace.h ChangeLog, super.c: 2001-01-12 21:05:57 +00:00
pass1.c e2fsck: skip low dtime check if the number of inodes > s_mkfs_time 2014-04-22 14:14:56 -04:00
pass1b.c build: quiet LLVM non-literal string format warning 2013-12-15 22:12:16 -05:00
pass2.c Clean up sparse warnings 2013-12-16 18:56:36 -05:00
pass3.c e2fsck: read only parameter incorrectly compared 2013-12-19 16:24:54 -05:00
pass4.c e2fsck: use dgrp_t for block group numbers 2013-12-02 23:21:31 -05:00
pass5.c e2fsck: remove uninit block bitmap calculation 2014-01-11 14:05:02 -05:00
problem.c e2fsck: fix last mount time and last write time in preen mode 2014-07-04 23:59:45 -04:00
problem.h e2fsck: use dgrp_t for block group numbers 2013-12-02 23:21:31 -05:00
problemP.h e2fsck: add ability to limit the # of problems of a particular type 2012-03-14 17:44:54 -04:00
prof_err.et Fix more spelling errors found by translators and add pluralization 2011-10-09 17:54:23 -04:00
profile.c e2fsck, mke2fs: enable octal integers in the profile/config file 2014-01-30 13:58:18 -05:00
profile.h mke2fs: Allow specifying reserved_ratio via mke2fs.conf 2011-05-14 23:34:48 -04:00
profile_helpers.c Shorten compile commands run by the build system 2011-09-18 17:34:37 -04:00
profile_helpers.h Simplify profile core functionality 2006-01-02 22:04:41 -05:00
quota.c quota: integrate mkquota.h into quotaio.h 2014-05-13 10:13:04 -04:00
recovery.c e2fsck: fix gcc -Wall nits 2013-05-19 21:36:31 -04:00
region.c build: quiet some "gcc -Wall" compiler warnings 2012-12-29 17:39:45 -05:00
rehash.c e2fsck: only release clusters when shortening a directory during a rehash 2013-12-15 23:52:23 -05:00
revoke.c Shorten compile commands run by the build system 2011-09-18 17:34:37 -04:00
scantest.c e2fsprogs: introduce ext2fs_close_free() helper 2014-07-05 21:06:48 -04:00
sigcatcher.c Work around Debian Bug #712530 2013-06-16 17:54:39 -04:00
super.c e2fsck: don't add a UUID on a mounted filesystem with csums 2014-02-23 19:21:33 -05:00
unix.c e2fsprogs: introduce ext2fs_close_free() helper 2014-07-05 21:06:48 -04:00
util.c e2fsprogs: introduce ext2fs_close_free() helper 2014-07-05 21:06:48 -04:00