From 2afcbe139d272fa494c28c8e6a0624d93a96e157 Mon Sep 17 00:00:00 2001 From: Dave Reisner Date: Wed, 18 Sep 2013 10:15:29 -0400 Subject: [PATCH] libmount: free username after check Leak reported by valgrind: ==14226== 7 bytes in 1 blocks are definitely lost in loss record 1 of 1 ==14226== at 0x4C2757B: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==14226== by 0x5534839: strdup (in /usr/lib/libc-2.18.so) ==14226== by 0x4E53FE0: mnt_get_username (utils.c:560) ==14226== by 0x4E456A5: mnt_context_prepare_umount (context_umount.c:413) ==14226== by 0x4E464F7: mnt_context_umount (context_umount.c:851) ==14226== by 0x403476: umount_one (umount.c:299) ==14226== by 0x402B34: main (umount.c:629) Signed-off-by: Dave Reisner --- libmount/src/context_umount.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/libmount/src/context_umount.c b/libmount/src/context_umount.c index 2e912c0dcd..766adfde1e 100644 --- a/libmount/src/context_umount.c +++ b/libmount/src/context_umount.c @@ -423,6 +423,8 @@ static int evaluate_permissions(struct libmnt_context *cxt) if (optstr && !mnt_optstr_get_option(optstr, "user", &mtab_user, &sz) && sz) ok = !strncmp(curr_user, mtab_user, sz); + + free(curr_user); } if (ok) { -- 2.47.2