From 23f66dec527cea00bd5613c6d52d22a50b54f3d0 Mon Sep 17 00:00:00 2001 From: James Clarke Date: Sun, 7 Feb 2016 23:18:11 +0000 Subject: Fixed leaks in _netfs_translator_callback2_fn * libnetfs/trans-callback.c (_netfs_translator_callback2_fn): Fixed leaking iouser and peropen structs on error. --- libnetfs/trans-callback.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'libnetfs/trans-callback.c') diff --git a/libnetfs/trans-callback.c b/libnetfs/trans-callback.c index 3f1aee6a..ed21aa2a 100644 --- a/libnetfs/trans-callback.c +++ b/libnetfs/trans-callback.c @@ -67,7 +67,11 @@ _netfs_translator_callback2_fn (void *cookie1, void *cookie2, int flags, po = netfs_make_peropen (node, flags, cookie2); if (! po) - return errno; + { + err = errno; + iohelp_free_iouser (user); + return err; + } cred = netfs_make_protid (po, user); if (cred) @@ -79,8 +83,10 @@ _netfs_translator_callback2_fn (void *cookie1, void *cookie2, int flags, } else { + err = errno; + netfs_release_peropen (po); iohelp_free_iouser (user); - return errno; + return err; } } -- cgit v1.2.3