This is the mail archive of the gdb-patches@sources.redhat.com 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]

Re: RFC: Run length encoding bug in remote.c?


> The patch below makes that change.  Though this works (tested with
> "print *current" in gdb) and looks sensible to me, I have a feeling that
> this error should show up quite often for other people as well, since it
> would happen every time the response to an 'm' packet ends with
> run-length encoding of the data.


I don't know that many targets use run-length incoding and hence, 
probably few have noticed the bug.

> I suspect that the (bc + repeat) in the condition should in fact be (bc
> + repeat - 1) since the memset begins already at position bc in buf,
> which means that the last position in buf to be memsetted is at position
> (bc + repeat - 1).  *That* position must be < sizeof_buf - 1 to allow
> room for null-termination of buf.


Yes, I'm convinced - my walk through came up with the assertion ``bc + 
repeat <= sizeof_buf - 1'' which is equivalent to your patch.

So approved.

	Andrew


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