This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
[rfa] Clarify remote protocol RLE example
- From: Daniel Jacobowitz <drow at false dot org>
- To: gdb-patches at sourceware dot org
- Cc: Eli Zaretskii <eliz at gnu dot org>, ukleinek at informatik dot uni-freiburg dot de
- Date: Sat, 3 Nov 2007 12:19:56 -0400
- Subject: [rfa] Clarify remote protocol RLE example
Uwe pointed out that the example in the GDB manual for run-length
encoding is a bit confusing. It suggests that "0* " should expand
to 000, but in fact it expands to 0000, because the initial zero
is counted separately.
Is this version clearer? OK to commit?
--
Daniel Jacobowitz
CodeSourcery
2007-11-03 Daniel Jacobowitz <dan@codesourcery.com>
* gdb.texinfo (Overview): Clarify run-length encoding
example.
Index: gdb.texinfo
===================================================================
RCS file: /cvs/src/src/gdb/doc/gdb.texinfo,v
retrieving revision 1.441
diff -u -p -U5 -r1.441 gdb.texinfo
--- gdb.texinfo 30 Oct 2007 19:35:35 -0000 1.441
+++ gdb.texinfo 3 Nov 2007 16:09:21 -0000
@@ -22937,22 +22937,24 @@ must also escape @code{0x2a} (@sc{ascii}
is not interpreted as the start of a run-length encoded sequence
(described next).
Response @var{data} can be run-length encoded to save space. A @samp{*}
means that the next character is an @sc{ascii} encoding giving a repeat count
-which stands for that many repetitions of the character preceding the
+which stands for that many additional repetitions of the character preceding the
@samp{*}. The encoding is @code{n+29}, yielding a printable character
where @code{n >=3} (which is where rle starts to win). The printable
characters @samp{$}, @samp{#}, @samp{+} and @samp{-} or with a numeric
value greater than 126 should not be used.
So:
@smallexample
"@code{0* }"
@end smallexample
@noindent
-means the same as "0000".
+means the same as "0000". The initial @code{0} contributes one zero,
+and the space (@sc{ascii} 32) contributes a repeat count of three
+additional zeros.
The error response returned for some packets includes a two character
error number. That number is not well defined.
@cindex empty response, for unsupported packets