diff options
author | Karel Zak | 2014-07-17 15:00:17 +0200 |
---|---|---|
committer | Karel Zak | 2014-07-17 15:00:17 +0200 |
commit | aea3a3ba2ccaa11e66d50f4b4658e33d6675715a (patch) | |
tree | a4f7c16b8f9bfe7d13864b9d537fdb38883b547e /misc-utils/findmnt.c | |
parent | sulogin: don't use uninitialized struct sigaction [coverity scan] (diff) | |
download | kernel-qcow2-util-linux-aea3a3ba2ccaa11e66d50f4b4658e33d6675715a.tar.gz kernel-qcow2-util-linux-aea3a3ba2ccaa11e66d50f4b4658e33d6675715a.tar.xz kernel-qcow2-util-linux-aea3a3ba2ccaa11e66d50f4b4658e33d6675715a.zip |
findmnt: fix memory leak [coverity scan]
Signed-off-by: Karel Zak <kzak@redhat.com>
Diffstat (limited to 'misc-utils/findmnt.c')
-rw-r--r-- | misc-utils/findmnt.c | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/misc-utils/findmnt.c b/misc-utils/findmnt.c index 847c349a2..c710cbb00 100644 --- a/misc-utils/findmnt.c +++ b/misc-utils/findmnt.c @@ -711,16 +711,21 @@ static int has_line(struct libscols_table *table, struct libmnt_fs *fs) { struct libscols_line *ln; struct libscols_iter *itr; + int rc = 0; itr = scols_new_iter(SCOLS_ITER_FORWARD); if (!itr) return 0; - while(scols_table_next_line(table, itr, &ln) == 0) { - if ((struct libmnt_fs *) scols_line_get_userdata(ln) == fs) - return 1; + while (scols_table_next_line(table, itr, &ln) == 0) { + if ((struct libmnt_fs *) scols_line_get_userdata(ln) == fs) { + rc = 1; + break; + } } - return 0; + + scols_free_iter(itr); + return rc; } /* reads filesystems from @tb (libmount) and fillin @table (output table) */ |