From: Christian Brauner Date: Sun, 25 Oct 2015 21:59:45 +0000 (+0100) Subject: Simplify function X-Git-Tag: lxc-1.0.8~2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=752b36f5b3ca11364462320e153a828e0946ded6;p=thirdparty%2Flxc.git Simplify function Instead of duplicating the cleanup-code, once for success and once for failure, simply keep a variable fret which is -1 in the beginning and gets set to 0 on success or stays -1 on failure. Signed-off-by: Christian Brauner Acked-by: Stéphane Graber --- diff --git a/src/lxc/conf.c b/src/lxc/conf.c index 3da3dffc1..c4eb42d11 100644 --- a/src/lxc/conf.c +++ b/src/lxc/conf.c @@ -2190,6 +2190,7 @@ static int mount_entry_create_overlay_dirs(const struct mntent *mntent, char *upperdir = NULL; char *workdir = NULL; char **opts = NULL; + int fret = -1; int ret = 0; size_t arrlen = 0; size_t dirlen = 0; @@ -2237,14 +2238,12 @@ static int mount_entry_create_overlay_dirs(const struct mntent *mntent, WARN("Failed to create workdir"); } - free(rootfsdir); - lxc_free_array((void **)opts, free); - return 0; + fret = 0; err: free(rootfsdir); lxc_free_array((void **)opts, free); - return -1; + return fret; } static int mount_entry_create_aufs_dirs(const struct mntent *mntent, @@ -2258,6 +2257,7 @@ static int mount_entry_create_aufs_dirs(const struct mntent *mntent, char *tmp = NULL; char *upperdir = NULL; char **opts = NULL; + int fret = -1; int ret = 0; size_t arrlen = 0; size_t i; @@ -2299,14 +2299,12 @@ static int mount_entry_create_aufs_dirs(const struct mntent *mntent, WARN("Failed to create upperdir"); } - free(rootfsdir); - lxc_free_array((void **)opts, free); - return 0; + fret = 0; err: free(rootfsdir); lxc_free_array((void **)opts, free); - return -1; + return fret; }