pyocd / pyOCD

Open source Python library for programming and debugging Arm Cortex-M microcontrollers
https://pyocd.io
Apache License 2.0
1.08k stars 472 forks source link

Reset the offset in finding control block #1654

Open KenMacD opened 6 months ago

KenMacD commented 6 months ago

This commit fixes an issue where the control block id was not found in cases where the bytes spanned two read blocks.

Example data block causing the original issue:

01:08:18.444,458] <dbg> SEGGER R

In this case the code skips 24 bytes, making the next loop start with:

SEGGER RTT\x00\x00\x00\x00…

Unfortunately offset is still 8, which the first byte does not match. The offset is then reset, but by that time the first byte has already been skipped over.

Re: #1553

elfmimi commented 4 months ago

Superseded by #1669 (proposal)