This is the mail archive of the gdb-cvs@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[binutils-gdb] Fix misreporting of omitted bytes for large remote packets


https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=567a3e54d211ab8d09119f99fed10b57db895450

commit 567a3e54d211ab8d09119f99fed10b57db895450
Author: Simon Marchi <simon.marchi@ericsson.com>
Date:   Thu Mar 8 19:00:03 2018 -0500

    Fix misreporting of omitted bytes for large remote packets
    
    In remote.c, when the output of "set debug remote" is truncated, the
    number of characters reported is incorrect.  What is reported is the
    number of characters added by the quoting, not the number of characters
    that were truncated.
    
    gdb/ChangeLog:
    
    	* remote.c (putpkt_binary): Fix omitted bytes reporting.
    	(getpkt_or_notif_sane_1): Likewise.

Diff:
---
 gdb/ChangeLog |  5 +++++
 gdb/remote.c  | 16 ++++++----------
 2 files changed, 11 insertions(+), 10 deletions(-)

diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index fc5738b..114f451 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,8 @@
+2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
+
+	* remote.c (putpkt_binary): Fix omitted bytes reporting.
+	(getpkt_or_notif_sane_1): Likewise.
+
 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
 
 	* build-id.c (build_id_to_debug_bfd): Use std::string.
diff --git a/gdb/remote.c b/gdb/remote.c
index 134a97e..7f409fd 100644
--- a/gdb/remote.c
+++ b/gdb/remote.c
@@ -8720,11 +8720,9 @@ putpkt_binary (const char *buf, int cnt)
 
 	  fprintf_unfiltered (gdb_stdlog, "Sending packet: %s", str.c_str ());
 
-	  if (str.length () > REMOTE_DEBUG_MAX_CHAR)
-	    {
-	      fprintf_unfiltered (gdb_stdlog, "[%zu bytes omitted]",
-				  str.length () - REMOTE_DEBUG_MAX_CHAR);
-	    }
+	  if (len > REMOTE_DEBUG_MAX_CHAR)
+	    fprintf_unfiltered (gdb_stdlog, "[%d bytes omitted]",
+				len - REMOTE_DEBUG_MAX_CHAR);
 
 	  fprintf_unfiltered (gdb_stdlog, "...");
 
@@ -9157,11 +9155,9 @@ getpkt_or_notif_sane_1 (char **buf, long *sizeof_buf, int forever,
 	      fprintf_unfiltered (gdb_stdlog, "Packet received: %s",
 				  str.c_str ());
 
-	      if (str.length () >  REMOTE_DEBUG_MAX_CHAR)
-		{
-		  fprintf_unfiltered (gdb_stdlog, "[%zu bytes omitted]",
-				      str.length () - REMOTE_DEBUG_MAX_CHAR);
-		}
+	      if (val > REMOTE_DEBUG_MAX_CHAR)
+		fprintf_unfiltered (gdb_stdlog, "[%d bytes omitted]",
+				    val - REMOTE_DEBUG_MAX_CHAR);
 
 	      fprintf_unfiltered (gdb_stdlog, "\n");
 	    }


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]