From a0e71ff86ff0511a2a58cb8a8fca49b9ac8dbd88 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marco=20Trevisan=20=28Trevi=C3=B1o=29?= Date: Tue, 30 Aug 2022 16:10:04 +0200 Subject: [PATCH] gio-tool-mount: Return early on fgets EOF As per commit a5390002 we're exiting with error in case fgets failed, however it could also fail because of EOF (like on ^D), so in such case we can just return early treating it as a non-error. Otherwise still exit with error. Fixes: #2737 --- gio/gio-tool-mount.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/gio/gio-tool-mount.c b/gio/gio-tool-mount.c index 4d4a45092..93575c9f3 100644 --- a/gio/gio-tool-mount.c +++ b/gio/gio-tool-mount.c @@ -113,7 +113,15 @@ prompt_for (const char *prompt, const char *default_value, gboolean echo) #endif if (!fgets (data, sizeof (data), stdin)) - g_error ("Failed to read from standard input"); + { + if (feof (stdin)) + { + g_print ("\n"); + return NULL; + } + + g_error ("Failed to read from standard input"); + } #ifdef HAVE_TERMIOS_H if (restore_flags)