From: Christian Brauner Date: Sat, 13 Aug 2016 23:01:04 +0000 (+0200) Subject: tools: use fclose() after fdopen() + add newline X-Git-Tag: lxc-2.1.0~356^2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=refs%2Fpull%2F1128%2Fhead;p=thirdparty%2Flxc.git tools: use fclose() after fdopen() + add newline So far we accidently used close() on the original file descriptor. (After fdopen() the original fd is considered private and should not be used anymore. The close operations should be performed on the new file handle. We did the correct thing on error but not on success.) Using close() on the original fd caused "Text file busy" errors and prevented the cloned tmpfs container from starting. Signed-off-by: Christian Brauner --- diff --git a/src/lxc/tools/lxc_copy.c b/src/lxc/tools/lxc_copy.c index 9f653e319..3257ab73b 100644 --- a/src/lxc/tools/lxc_copy.c +++ b/src/lxc/tools/lxc_copy.c @@ -454,7 +454,7 @@ static int do_clone_ephemeral(struct lxc_container *c, if (arg->tmpfs && !my_args.quiet) printf("Container is placed on tmpfs.\nRebooting will cause " - "all changes made to it to be lost!"); + "all changes made to it to be lost!\n"); if (!arg->daemonize && arg->argc) { clone->want_daemonize(clone, true); @@ -863,7 +863,7 @@ static char *mount_tmpfs(const char *oldname, const char *newname, goto err_close; } - close(fd); + fclose(fp); return premount; err_close: