From: Ben Collins <bcollins@ubuntu.com>
To: linux-kernel@vger.kernel.org
Subject: [PATCH 15/15] kconf: Check for eof from input stream.
Date: Wed, 04 Jan 2006 17:01:49 -0500 [thread overview]
Message-ID: <0ISL003ZI97GCY@a34-mta01.direcway.com> (raw)
Signed-off-by: Ben Collins <bcollins@ubuntu.com>
---
scripts/kconfig/conf.c | 18 ++++++++++++++++--
1 files changed, 16 insertions(+), 2 deletions(-)
62bb36dcb307ca53999a14f74da6a803e36d5f62
diff --git a/scripts/kconfig/conf.c b/scripts/kconfig/conf.c
index 8ba5d29..10eeae5 100644
--- a/scripts/kconfig/conf.c
+++ b/scripts/kconfig/conf.c
@@ -63,6 +63,20 @@ static void check_stdin(void)
}
}
+static char *fgets_check_stream(char *s, int size, FILE *stream)
+{
+ char *ret = fgets(s, size, stream);
+
+ if (ret == NULL && feof(stream)) {
+ printf(_("aborted!\n\n"));
+ printf(_("Console input is closed. "));
+ printf(_("Run 'make oldconfig' to update configuration.\n\n"));
+ exit(1);
+ }
+
+ return ret;
+}
+
static void conf_askvalue(struct symbol *sym, const char *def)
{
enum symbol_type type = sym_get_type(sym);
@@ -100,7 +114,7 @@ static void conf_askvalue(struct symbol
check_stdin();
case ask_all:
fflush(stdout);
- fgets(line, 128, stdin);
+ fgets_check_stream(line, 128, stdin);
return;
case set_default:
printf("%s\n", def);
@@ -356,7 +370,7 @@ static int conf_choice(struct menu *menu
check_stdin();
case ask_all:
fflush(stdout);
- fgets(line, 128, stdin);
+ fgets_check_stream(line, 128, stdin);
strip(line);
if (line[0] == '?') {
printf("\n%s\n", menu->sym->help ?
--
1.0.5
next reply other threads:[~2006-01-04 22:02 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-01-04 22:01 Ben Collins [this message]
2006-01-08 16:34 ` [PATCH 15/15] kconf: Check for eof from input stream Roman Zippel
2006-01-08 18:53 ` Ben Collins
2006-01-08 20:59 ` Roman Zippel
2006-01-08 21:41 ` Ben Collins
2006-01-09 0:09 ` Roman Zippel
2006-01-09 3:59 ` Ben Collins
2006-01-09 11:32 ` Roman Zippel
2006-01-09 13:42 ` Ben Collins
2006-01-11 23:26 ` Roman Zippel
2006-01-12 2:00 ` Ben Collins
2006-01-12 11:08 ` Roman Zippel
2006-01-12 12:27 ` Ben Collins
2006-01-12 12:48 ` Roman Zippel
2006-01-12 13:31 ` Ben Collins
2006-01-12 14:00 ` Roman Zippel
2006-01-12 14:16 ` Ben Collins
2006-01-13 17:44 ` Roman Zippel
[not found] <5roZI-5y9-29@gated-at.bofh.it>
[not found] ` <5sSVt-5Du-1@gated-at.bofh.it>
[not found] ` <5sWwg-2Bq-21@gated-at.bofh.it>
[not found] ` <5t4kf-5Px-11@gated-at.bofh.it>
[not found] ` <5t5zv-7GD-31@gated-at.bofh.it>
[not found] ` <5tXA1-3Lh-35@gated-at.bofh.it>
[not found] ` <5u04G-7s6-19@gated-at.bofh.it>
[not found] ` <5u8Yt-317-41@gated-at.bofh.it>
[not found] ` <5u9L8-4gd-19@gated-at.bofh.it>
[not found] ` <5uadH-4TM-1@gated-at.bofh.it>
[not found] ` <5uaQp-5UL-7@gated-at.bofh.it>
[not found] ` <5ubjI-6KH-21@gated-at.bofh.it>
[not found] ` <5ubtB-6Xy-9@gated-at.bofh.it>
[not found] ` <5uBdT-2Gn-23@gated-at.bofh.it>
2006-01-18 21:51 ` Bodo Eggert
2006-01-19 11:52 ` Roman Zippel
2006-01-19 12:50 ` Bodo Eggert
2006-01-19 12:55 ` Roman Zippel
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=0ISL003ZI97GCY@a34-mta01.direcway.com \
--to=bcollins@ubuntu.com \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox