From cc4fd5064bcb9d1c3daaaf6753ee2a76caacc74d Mon Sep 17 00:00:00 2001 From: Serge Hallyn Date: Sat, 3 Oct 2015 21:52:16 +0000 Subject: [PATCH] lxc_mount_auto_mounts: fix weirdness MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit The default_mounts[i].destination is never NULL except in the last 'stop here' entry. Coverity doesn't know about that and so is spewing a warning. In any case, let's add a more stringent check in case someone accidentally adds a NULL there later. Signed-off-by: Serge Hallyn Acked-by: Stéphane Graber --- src/lxc/conf.c | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/src/lxc/conf.c b/src/lxc/conf.c index bb4c19f82..b219a8666 100644 --- a/src/lxc/conf.c +++ b/src/lxc/conf.c @@ -803,16 +803,18 @@ static int lxc_mount_auto_mounts(struct lxc_conf *conf, int flags, struct lxc_ha return -1; } } - if (default_mounts[i].destination) { - /* will act like strdup if %r is not present */ - destination = lxc_string_replace("%r", conf->rootfs.path ? conf->rootfs.mount : "", default_mounts[i].destination); - if (!destination) { - saved_errno = errno; - SYSERROR("memory allocation error"); - free(source); - errno = saved_errno; - return -1; - } + if (!default_mounts[i].destination) { + ERROR("BUG: auto mounts destination %d was NULL", i); + return -1; + } + /* will act like strdup if %r is not present */ + destination = lxc_string_replace("%r", conf->rootfs.path ? conf->rootfs.mount : "", default_mounts[i].destination); + if (!destination) { + saved_errno = errno; + SYSERROR("memory allocation error"); + free(source); + errno = saved_errno; + return -1; } mflags = add_required_remount_flags(source, destination, default_mounts[i].flags); -- 2.47.2