Remove call to gdb_flush at end of ada_val_print_1
authorJoel Brobecker <brobecker@adacore.com>
Thu, 19 Dec 2013 11:48:39 +0000 (15:48 +0400)
committerJoel Brobecker <brobecker@adacore.com>
Tue, 7 Jan 2014 04:17:38 +0000 (08:17 +0400)
I am not sure why this function was called in the first place, but
it disrupts the printing flow when in GDB/MI mode, ending the current
console stream output, and starting a new one. It's not clear whether,
with the code as currently written, the problem is actually visible
or only latent. But, it becomes visible when we replace one of the
"return" statements in the "switch" block just above by a "break"
statement (this is something I'd like to do, and what made me realize
the problem). With the gdb_flush call (after having replaced the
"return" statement as explained above), we get:

        % gdb -q -i=mi ada_prg
        (gdb)
        print 1
        &"print 1\n"
  !! -> ~"$1 = 1"
  !! -> ~"\n"
        ^done

With the gdb_flush call removed, we now get the entire output into
a single stream.

        (gdb)
        print 1
        &"print 1\n"
        ~"$1 = 1"
        ~"\n"
        ^done

gdb/ChangeLog:

        * ada-valprint.c (ada_val_print_1): Remove call to gdb_flush.

gdb/ChangeLog
gdb/ada-valprint.c

index ee0df63..f8820a5 100644 (file)
@@ -1,5 +1,9 @@
 2014-01-07  Joel Brobecker  <brobecker@adacore.com>
 
+       * ada-valprint.c (ada_val_print_1): Remove call to gdb_flush.
+
+2014-01-07  Joel Brobecker  <brobecker@adacore.com>
+
        * ada-valprint.c (ada_val_print_1): Replace calls to
        ada_val_print_1 by calls to val_print.
 
index ff0fa66..9c60a79 100644 (file)
@@ -1044,7 +1044,6 @@ ada_val_print_1 (struct type *type, const gdb_byte *valaddr,
 
       break;
     }
-  gdb_flush (stream);
 }
 
 /* See val_print for a description of the various parameters of this