conf.c: always strdup rootfs.mount

The reason is that the generic code which handles reading
lxc.rootfs.mount always frees the old value if not NULL.
So without this setting lxc.rootfs.mount = /mnt causes
segfault.

Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com>
This commit is contained in:
Serge Hallyn 2013-06-18 14:52:24 -05:00
parent 37903589a2
commit 54c30e2908

View File

@ -2134,7 +2134,7 @@ struct lxc_conf *lxc_conf_init(void)
new->console.slave = -1;
new->console.name[0] = '\0';
new->maincmd_fd = -1;
new->rootfs.mount = default_rootfs_mount;
new->rootfs.mount = strdup(default_rootfs_mount);
new->kmsg = 1;
lxc_list_init(&new->cgroup);
lxc_list_init(&new->network);
@ -3152,7 +3152,7 @@ void lxc_conf_free(struct lxc_conf *conf)
return;
if (conf->console.path)
free(conf->console.path);
if (conf->rootfs.mount != default_rootfs_mount)
if (conf->rootfs.mount)
free(conf->rootfs.mount);
if (conf->rootfs.path)
free(conf->rootfs.path);