summaryrefslogtreecommitdiffstats
path: root/sys-utils/umount.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys-utils/umount.c')
-rw-r--r--sys-utils/umount.c15
1 files changed, 8 insertions, 7 deletions
diff --git a/sys-utils/umount.c b/sys-utils/umount.c
index 929da8d91..e3734b0ec 100644
--- a/sys-utils/umount.c
+++ b/sys-utils/umount.c
@@ -479,7 +479,7 @@ int main(int argc, char **argv)
setlocale(LC_ALL, "");
bindtextdomain(PACKAGE, LOCALEDIR);
textdomain(PACKAGE);
- atexit(close_stdout);
+ close_stdout_atexit();
mnt_init_debug(0);
cxt = mnt_new_context();
@@ -517,9 +517,6 @@ int main(int argc, char **argv)
case 'f':
mnt_context_enable_force(cxt, TRUE);
break;
- case 'h':
- usage();
- break;
case 'i':
mnt_context_disable_helpers(cxt, TRUE);
break;
@@ -548,9 +545,6 @@ int main(int argc, char **argv)
case 'v':
mnt_context_enable_verbose(cxt, TRUE);
break;
- case 'V':
- umount_print_version();
- break;
case 'N':
{
char path[PATH_MAX];
@@ -563,6 +557,13 @@ int main(int argc, char **argv)
err(MNT_EX_SYSERR, _("failed to set target namespace to %s"), pid ? path : optarg);
break;
}
+
+ case 'h':
+ mnt_free_context(cxt);
+ usage();
+ case 'V':
+ mnt_free_context(cxt);
+ umount_print_version();
default:
errtryhelp(MNT_EX_USAGE);
}