On Sat, Oct 03, 2015 at 09:52:16PM +0000, Serge Hallyn wrote:
> 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 <serge.hal...@ubuntu.com>

Acked-by: Stéphane Graber <stgra...@ubuntu.com>

> ---
>  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 bb4c19f..80ff647 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.5.0
> 
> _______________________________________________
> lxc-devel mailing list
> lxc-devel@lists.linuxcontainers.org
> http://lists.linuxcontainers.org/listinfo/lxc-devel

-- 
Stéphane Graber
Ubuntu developer
http://www.ubuntu.com

Attachment: signature.asc
Description: Digital signature

_______________________________________________
lxc-devel mailing list
lxc-devel@lists.linuxcontainers.org
http://lists.linuxcontainers.org/listinfo/lxc-devel

Reply via email to