* [Cluster-devel] [PATCH gfs2-utils] mkfs.gfs2: make are you sure EOF happy
@ 2021-01-13 17:36 Alexander Aring
2021-01-14 11:56 ` Andrew Price
0 siblings, 1 reply; 2+ messages in thread
From: Alexander Aring @ 2021-01-13 17:36 UTC (permalink / raw)
To: cluster-devel.redhat.com
This patch adds a check for getline() error, as the manpage states out
that -1 is returned in EOF case we answer such case and possible
other errors with no. If you currently press ctrl-d during this question
an endless loop of asking this question over and over again will occur.
However this patch changes to handle errors with no and prints a newline
so the user have a new clean shell prompt afterwards. If getline reads
zero characters .e.g '\n', the question is if we are sure is asked again.
Signed-off-by: Alexander Aring <aahringo@redhat.com>
---
gfs2/mkfs/main_mkfs.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/gfs2/mkfs/main_mkfs.c b/gfs2/mkfs/main_mkfs.c
index 5e34ca1f..e6fc6532 100644
--- a/gfs2/mkfs/main_mkfs.c
+++ b/gfs2/mkfs/main_mkfs.c
@@ -528,9 +528,14 @@ static int are_you_sure(void)
`locale -k noexpr` */
printf( _("Are you sure you want to proceed? [y/n] "));
ret = getline(&line, &len, stdin);
+ if (ret < 0) {
+ printf("\n");
+ free(line);
+ return 0;
+ }
res = rpmatch(line);
free(line);
- if (ret <= 0)
+ if (ret == 0)
continue;
if (res == 1) /* Yes */
return 1;
--
2.26.2
^ permalink raw reply related [flat|nested] 2+ messages in thread* [Cluster-devel] [PATCH gfs2-utils] mkfs.gfs2: make are you sure EOF happy
2021-01-13 17:36 [Cluster-devel] [PATCH gfs2-utils] mkfs.gfs2: make are you sure EOF happy Alexander Aring
@ 2021-01-14 11:56 ` Andrew Price
0 siblings, 0 replies; 2+ messages in thread
From: Andrew Price @ 2021-01-14 11:56 UTC (permalink / raw)
To: cluster-devel.redhat.com
On 13/01/2021 17:36, Alexander Aring wrote:
> This patch adds a check for getline() error, as the manpage states out
> that -1 is returned in EOF case we answer such case and possible
> other errors with no. If you currently press ctrl-d during this question
> an endless loop of asking this question over and over again will occur.
> However this patch changes to handle errors with no and prints a newline
> so the user have a new clean shell prompt afterwards. If getline reads
> zero characters .e.g '\n', the question is if we are sure is asked again.
>
> Signed-off-by: Alexander Aring <aahringo@redhat.com>
> ---
> gfs2/mkfs/main_mkfs.c | 7 ++++++-
> 1 file changed, 6 insertions(+), 1 deletion(-)
Applied, thanks Alex.
Andy
>
> diff --git a/gfs2/mkfs/main_mkfs.c b/gfs2/mkfs/main_mkfs.c
> index 5e34ca1f..e6fc6532 100644
> --- a/gfs2/mkfs/main_mkfs.c
> +++ b/gfs2/mkfs/main_mkfs.c
> @@ -528,9 +528,14 @@ static int are_you_sure(void)
> `locale -k noexpr` */
> printf( _("Are you sure you want to proceed? [y/n] "));
> ret = getline(&line, &len, stdin);
> + if (ret < 0) {
> + printf("\n");
> + free(line);
> + return 0;
> + }
> res = rpmatch(line);
> free(line);
> - if (ret <= 0)
> + if (ret == 0)
> continue;
> if (res == 1) /* Yes */
> return 1;
>
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2021-01-14 11:56 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-01-13 17:36 [Cluster-devel] [PATCH gfs2-utils] mkfs.gfs2: make are you sure EOF happy Alexander Aring
2021-01-14 11:56 ` Andrew Price
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.