In the best case we'll get errors about failing to remove it. In the
worst case we'll be trying to delete the original container's rootfs.
Reported-by: zoolook <nbensa+lxcusers@gmail.com>
Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com>
{
struct lxc_container *c2 = NULL;
char newpath[MAXPATHLEN];
- int ret;
+ int ret, storage_copied = 0;
const char *n, *l;
FILE *fout;
if (ret < 0)
goto out;
+ // We've now successfully created c2's storage, so clear it out if we
+ // fail after this
+ storage_copied = 1;
+
if (!c2->save_config(c2, NULL))
goto out;
out:
container_mem_unlock(c);
if (c2) {
+ if (!storage_copied)
+ c2->lxc_conf->rootfs.path = NULL;
c2->destroy(c2);
lxc_container_put(c2);
}