From: Joel Brobecker Date: Fri, 6 Jun 2014 15:28:27 +0000 (-0400) Subject: thinko in serial.c::serial_write debug trace X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=0e58ee40a2cec3c4bf796980fb05f93540e40ec2;p=binutils-gdb.git thinko in serial.c::serial_write debug trace I noticed that, when using 'set debug serial 1', the "write" traces would always be NUL characters: [ w \x00][\x00][\x00][\x00][\x00][etc] This is due to a small thinko in the loop that output each character, where we accidently used the loop boundary instead of the loop index to index the character to be printed. After this patch is applied, the output now becomes: [ w $][v][C][o][n][t][?][#][4][9] gdb/ChangeLog: * serial.c (serial_write): Fix index of character to be printed in call to serial_logchar when serial debug traces are enabled. --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 3097a31c1ef..61464c82392 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2014-06-10 Joel Brobecker + + * serial.c (serial_write): Fix index of character to be printed + in call to serial_logchar when serial debug traces are enabled. + 2014-06-10 Joel Brobecker * gdbtypes (resolve_dynamic_range): Add function description. diff --git a/gdb/serial.c b/gdb/serial.c index e780bbe2b82..d4435089d1d 100644 --- a/gdb/serial.c +++ b/gdb/serial.c @@ -423,7 +423,7 @@ serial_write (struct serial *scb, const void *buf, size_t count) for (c = 0; c < count; c++) { fprintf_unfiltered (gdb_stdlog, "["); - serial_logchar (gdb_stdlog, 'w', str[count] & 0xff, 0); + serial_logchar (gdb_stdlog, 'w', str[c] & 0xff, 0); fprintf_unfiltered (gdb_stdlog, "]"); } gdb_flush (gdb_stdlog);