From: Simon Marchi Date: Fri, 9 Mar 2018 00:00:03 +0000 (-0500) Subject: Fix misreporting of omitted bytes for large remote packets X-Git-Tag: binutils-2_31~1066 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=567a3e54d211ab8d09119f99fed10b57db895450;p=platform%2Fupstream%2Fbinutils.git 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 --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 + + * remote.c (putpkt_binary): Fix omitted bytes reporting. + (getpkt_or_notif_sane_1): Likewise. + 2018-03-08 Simon Marchi * 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"); }