Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Tom Tromey <tromey@redhat.com>
To: Pedro Alves <pedro@codesourcery.com>
Cc: gdb-patches@sourceware.org
Subject: Re: RFA: fix CLI/9591 (pagination and --batch)
Date: Fri, 05 Mar 2010 22:24:00 -0000	[thread overview]
Message-ID: <m3k4tqs8z7.fsf@fleche.redhat.com> (raw)
In-Reply-To: <201003052050.51865.pedro@codesourcery.com> (Pedro Alves's 	message of "Fri, 5 Mar 2010 20:50:51 +0000")

>>>>> "Pedro" == Pedro Alves <pedro@codesourcery.com> writes:

Pedro> Should queries be left enabled as well?

Sure, here's a followup that does this.

Tom

2010-03-05  Tom Tromey  <tromey@redhat.com>

	PR cli/9591:
	* utils.c: Include main.h.
	(fputs_maybe_filtered): Don't paginate if `batch'.
	(defaulted_query): Use default answer if `batch'.
	* main.h (batch): Declare.
	* main.c (batch): New global.
	(captured_main): Remove 'batch'.

2010-03-05  Tom Tromey  <tromey@redhat.com>

	PR cli/9591:
	* gdb.texinfo (Mode Options): Mention lack of pagination with
	--batch.

diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo
index 6bb7d52..d3e06c9 100644
--- a/gdb/doc/gdb.texinfo
+++ b/gdb/doc/gdb.texinfo
@@ -1028,7 +1028,9 @@ Run in batch mode.  Exit with status @code{0} after processing all the
 command files specified with @samp{-x} (and all commands from
 initialization files, if not inhibited with @samp{-n}).  Exit with
 nonzero status if an error occurs in executing the @value{GDBN} commands
-in the command files.
+in the command files.  Batch mode also disables pagination;
+@pxref{Screen Size} and acts as if @code{set confirm off} were in
+effect (@pxref{Messages/Warnings}).
 
 Batch mode may be useful for running @value{GDBN} as a filter, for
 example to download and run a program on another computer; in order to
diff --git a/gdb/main.c b/gdb/main.c
index e261348..e9f852e 100644
--- a/gdb/main.c
+++ b/gdb/main.c
@@ -76,6 +76,9 @@ struct ui_file *gdb_stdtargin;
 struct ui_file *gdb_stdtarg;
 struct ui_file *gdb_stdtargerr;
 
+/* True if --batch or --batch-silent was seen.  */
+int batch = 0;
+
 /* Support for the --batch-silent option.  */
 int batch_silent = 0;
 
@@ -247,7 +250,6 @@ captured_main (void *data)
   int argc = context->argc;
   char **argv = context->argv;
   static int quiet = 0;
-  static int batch = 0;
   static int set_args = 0;
 
   /* Pointers to various arguments from command line.  */
diff --git a/gdb/main.h b/gdb/main.h
index 5e45724..d94903c 100644
--- a/gdb/main.h
+++ b/gdb/main.h
@@ -34,5 +34,6 @@ extern int gdb_main (struct captured_main_args *);
 extern int return_child_result;
 extern int return_child_result_value;
 extern int batch_silent;
+extern int batch;
 
 #endif
diff --git a/gdb/utils.c b/gdb/utils.c
index 52596ca..388ba43 100644
--- a/gdb/utils.c
+++ b/gdb/utils.c
@@ -58,6 +58,7 @@
 #include "gdb_obstack.h"
 #include "gdbcore.h"
 #include "top.h"
+#include "main.h"
 
 #include "inferior.h"		/* for signed_pointer_to_address */
 
@@ -1495,7 +1496,7 @@ defaulted_query (const char *ctlstr, const char defchar, va_list args)
      question we're asking, and then answer the default automatically.  This
      way, important error messages don't get lost when talking to GDB
      over a pipe.  */
-  if (! input_from_terminal_p ())
+  if (batch || ! input_from_terminal_p ())
     {
       wrap_here ("");
       vfprintf_filtered (gdb_stdout, ctlstr, args);
@@ -2209,7 +2210,7 @@ fputs_maybe_filtered (const char *linebuffer, struct ui_file *stream,
     return;
 
   /* Don't do any filtering if it is disabled.  */
-  if ((stream != gdb_stdout) || !pagination_enabled
+  if ((stream != gdb_stdout) || !pagination_enabled || batch
       || (lines_per_page == UINT_MAX && chars_per_line == UINT_MAX))
     {
       fputs_unfiltered (linebuffer, stream);


  reply	other threads:[~2010-03-05 22:24 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-03-05 19:58 Tom Tromey
2010-03-05 20:51 ` Pedro Alves
2010-03-05 22:24   ` Tom Tromey [this message]
2010-03-05 23:45     ` Pedro Alves
2010-03-06  4:10     ` Joel Brobecker
2010-03-06  9:32       ` Eli Zaretskii
2010-03-06  9:14     ` Eli Zaretskii
2010-03-08 17:46       ` Tom Tromey
2010-03-08 18:13         ` Eli Zaretskii
2010-03-08 18:47           ` Tom Tromey
2010-03-08 19:11             ` Eli Zaretskii

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=m3k4tqs8z7.fsf@fleche.redhat.com \
    --to=tromey@redhat.com \
    --cc=gdb-patches@sourceware.org \
    --cc=pedro@codesourcery.com \
    /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