aboutsummaryrefslogtreecommitdiff
path: root/gdb/utils.c
diff options
context:
space:
mode:
authorStu Grossman <grossman@cygnus>1992-09-15 05:04:08 +0000
committerStu Grossman <grossman@cygnus>1992-09-15 05:04:08 +0000
commit3e3b0eb9d9bd49c08edbe181864a20282034c64d (patch)
tree174319bc3feb6a10f38cf836bc22dd27c9ebe6e7 /gdb/utils.c
parent5ca812d4fe087713bf7e177dcc6f553f590edfdf (diff)
downloadgdb-3e3b0eb9d9bd49c08edbe181864a20282034c64d.zip
gdb-3e3b0eb9d9bd49c08edbe181864a20282034c64d.tar.gz
gdb-3e3b0eb9d9bd49c08edbe181864a20282034c64d.tar.bz2
* utils.c (query): Remove test for energize from top. Now
handled in input_from_terminal_p().
Diffstat (limited to 'gdb/utils.c')
-rw-r--r--gdb/utils.c44
1 files changed, 31 insertions, 13 deletions
diff --git a/gdb/utils.c b/gdb/utils.c
index b99e4f9..4682d1d 100644
--- a/gdb/utils.c
+++ b/gdb/utils.c
@@ -703,21 +703,32 @@ query (va_alist)
fflush (stdout);
va_start (args);
ctlstr = va_arg (args, char *);
+ energize_query (ctlstr, args);
vfprintf_filtered (stdout, ctlstr, args);
- va_end (args);
printf_filtered ("(y or n) ");
- fflush (stdout);
- answer = fgetc (stdin);
- clearerr (stdin); /* in case of C-d */
- if (answer == EOF) /* C-d */
- return 1;
- if (answer != '\n') /* Eat rest of input line, to EOF or newline */
- do
- {
- ans2 = fgetc (stdin);
- clearerr (stdin);
- }
- while (ans2 != EOF && ans2 != '\n');
+ if (energize)
+ {
+ char *buf;
+
+ buf = energize_command_line_input(0, 0);
+ answer = buf ? *buf : 'Y';
+ energize_acknowledge_query(buf);
+ }
+ else
+ {
+ fflush (stdout);
+ answer = fgetc (stdin);
+ clearerr (stdin); /* in case of C-d */
+ if (answer == EOF) /* C-d */
+ return 1;
+ if (answer != '\n') /* Eat rest of input line, to EOF or newline */
+ do
+ {
+ ans2 = fgetc (stdin);
+ clearerr (stdin);
+ }
+ while (ans2 != EOF && ans2 != '\n');
+ }
if (answer >= 'a')
answer -= 040;
if (answer == 'Y')
@@ -725,6 +736,7 @@ query (va_alist)
if (answer == 'N')
return 0;
printf_filtered ("Please answer y or n.\n");
+ va_end (args);
}
}
@@ -991,6 +1003,12 @@ fputs_filtered (linebuffer, stream)
if (linebuffer == 0)
return;
+ if (energize)
+ {
+ energize_fputs(linebuffer);
+ return;
+ }
+
/* Don't do any filtering if it is disabled. */
if (stream != stdout
|| (lines_per_page == UINT_MAX && chars_per_line == UINT_MAX))