From: S.Çağlar Onur Date: Fri, 4 Oct 2013 03:54:50 +0000 (-0400) Subject: call lxc_container_put when appropriate X-Git-Tag: lxc-1.0.0.alpha2~51 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f3e52710c2310726ee3ced50148e2a5fea92481e;p=thirdparty%2Flxc.git call lxc_container_put when appropriate Signed-off-by: S.Çağlar Onur Signed-off-by: Serge Hallyn --- diff --git a/src/lxc/lxc_cgroup.c b/src/lxc/lxc_cgroup.c index b9727a0f4..7c26fc620 100644 --- a/src/lxc/lxc_cgroup.c +++ b/src/lxc/lxc_cgroup.c @@ -85,6 +85,7 @@ int main(int argc, char *argv[]) if (!c->may_control(c)) { ERROR("Insufficent privileges to control %s:%s", my_args.lxcpath[0], my_args.name); + lxc_container_put(c); return -1; } diff --git a/src/lxc/lxc_clone.c b/src/lxc/lxc_clone.c index e01c98b27..4639a90df 100644 --- a/src/lxc/lxc_clone.c +++ b/src/lxc/lxc_clone.c @@ -163,6 +163,7 @@ int main(int argc, char *argv[]) if (!c1->may_control(c1)) { fprintf(stderr, "Insufficent privileges to control %s\n", orig); + lxc_container_put(c1); return -1; } diff --git a/src/lxc/lxc_console.c b/src/lxc/lxc_console.c index f5d16fa6b..5dc3d49a0 100644 --- a/src/lxc/lxc_console.c +++ b/src/lxc/lxc_console.c @@ -113,17 +113,21 @@ int main(int argc, char *argv[]) if (!c->may_control(c)) { fprintf(stderr, "Insufficent privileges to control %s\n", my_args.name); + lxc_container_put(c); return -1; } if (!c->is_running(c)) { fprintf(stderr, "%s is not running\n", my_args.name); + lxc_container_put(c); exit(EXIT_FAILURE); } ret = c->console(c, my_args.ttynum, 0, 1, 2, my_args.escape); if (ret < 0) { + lxc_container_put(c); exit(EXIT_FAILURE); } + lxc_container_put(c); return EXIT_SUCCESS; } diff --git a/src/lxc/lxc_destroy.c b/src/lxc/lxc_destroy.c index d50fcf121..9983241d9 100644 --- a/src/lxc/lxc_destroy.c +++ b/src/lxc/lxc_destroy.c @@ -89,6 +89,7 @@ int main(int argc, char *argv[]) if (!c->may_control(c)) { fprintf(stderr, "Insufficent privileges to control %s\n", my_args.name); + lxc_container_put(c); return -1; } diff --git a/src/lxc/lxc_freeze.c b/src/lxc/lxc_freeze.c index 92d7aa272..9e783bdac 100644 --- a/src/lxc/lxc_freeze.c +++ b/src/lxc/lxc_freeze.c @@ -74,6 +74,7 @@ int main(int argc, char *argv[]) if (!c->may_control(c)) { ERROR("Insufficent privileges to control %s:%s", my_args.lxcpath[0], my_args.name); + lxc_container_put(c); return -1; } diff --git a/src/lxc/lxc_info.c b/src/lxc/lxc_info.c index ac562878a..aeaf9a896 100644 --- a/src/lxc/lxc_info.c +++ b/src/lxc/lxc_info.c @@ -109,6 +109,7 @@ int main(int argc, char *argv[]) if (!c->may_control(c)) { fprintf(stderr, "Insufficent privileges to control %s\n", c->name); + lxc_container_put(c); return -1; } @@ -160,5 +161,6 @@ int main(int argc, char *argv[]) } } + lxc_container_put(c); return 0; } diff --git a/src/lxc/lxc_snapshot.c b/src/lxc/lxc_snapshot.c index 573804b39..68e051db8 100644 --- a/src/lxc/lxc_snapshot.c +++ b/src/lxc/lxc_snapshot.c @@ -189,6 +189,7 @@ int main(int argc, char *argv[]) if (!c->may_control(c)) { fprintf(stderr, "Insufficent privileges to control %s\n", my_args.name); + lxc_container_put(c); return -1; } diff --git a/src/lxc/lxc_unfreeze.c b/src/lxc/lxc_unfreeze.c index 4c499ec19..e5def1a27 100644 --- a/src/lxc/lxc_unfreeze.c +++ b/src/lxc/lxc_unfreeze.c @@ -73,6 +73,7 @@ int main(int argc, char *argv[]) if (!c->may_control(c)) { ERROR("Insufficent privileges to control %s:%s", my_args.lxcpath[0], my_args.name); + lxc_container_put(c); return -1; } diff --git a/src/lxc/lxc_wait.c b/src/lxc/lxc_wait.c index 0a3487f17..b00377ccf 100644 --- a/src/lxc/lxc_wait.c +++ b/src/lxc/lxc_wait.c @@ -98,6 +98,7 @@ int main(int argc, char *argv[]) if (!c->may_control(c)) { fprintf(stderr, "Insufficent privileges to control %s\n", c->name); + lxc_container_put(c); return -1; }