Page MenuHomeFreeBSD

D33686.diff
No OneTemporary

D33686.diff

diff --git a/sys/gdb/gdb_packet.c b/sys/gdb/gdb_packet.c
--- a/sys/gdb/gdb_packet.c
+++ b/sys/gdb/gdb_packet.c
@@ -315,24 +315,16 @@
runlen--;
}
}
- if (runlen == 1) {
+ /* Don't emit '$', '#', '+', '-' or a run length below 3. */
+ while (runlen == 1 || runlen == 2 ||
+ runlen + 29 == '$' || runlen + 29 == '#' ||
+ runlen + 29 == '+' || runlen + 29 == '-') {
gdb_cur->gdb_putc(c);
cksum += c;
runlen--;
}
if (runlen == 0)
continue;
- /* Don't emit '$', '#', '+' or '-'. */
- if (runlen == 7) {
- gdb_cur->gdb_putc(c);
- cksum += c;
- runlen--;
- }
- if (runlen == 6 || runlen == 14 || runlen == 16) {
- gdb_cur->gdb_putc(c);
- cksum += c;
- runlen--;
- }
gdb_cur->gdb_putc('*');
cksum += '*';
gdb_cur->gdb_putc(runlen+29);

File Metadata

Mime Type
text/plain
Expires
Wed, Nov 20, 8:27 AM (15 h, 55 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
14733962
Default Alt Text
D33686.diff (828 B)

Event Timeline