stlink: swo: use completely the available buffer
The buffer passed to stlink_usb_trace_read() is allocated of size *size and does not need to be zero-terminated. There is no reason to not fill its last byte. When checking the bytes available on swo, limit the retrieved byte length to *size. Change-Id: Iade0f8963118695931f13a8a3f1ab204911236b6 Signed-off-by: Antonio Borneo <borneo.antonio@gmail.com> Reported-by: Adrian Negreanu <adrian.negreanu@nxp.com> Reviewed-on: http://openocd.zylin.com/6061 Tested-by: jenkins Reviewed-by: Adrian M Negreanu <adrian.negreanu@nxp.com> Reviewed-by: Tarek BOCHKATI <tarek.bouchkati@gmail.com>
This commit is contained in:
parent
a256943838
commit
8132b77d61
|
@ -1967,7 +1967,7 @@ static int stlink_usb_trace_read(void *handle, uint8_t *buf, size_t *size)
|
|||
return res;
|
||||
|
||||
size_t bytes_avail = le_to_h_u16(h->databuf);
|
||||
*size = bytes_avail < *size ? bytes_avail : *size - 1;
|
||||
*size = bytes_avail < *size ? bytes_avail : *size;
|
||||
|
||||
if (*size > 0) {
|
||||
res = stlink_usb_read_trace(handle, buf, *size);
|
||||
|
|
Loading…
Reference in New Issue