bug #43078: AVRDUDE crashes after sucessfully reading/writing eeprom

* jtag3.c (jtag3_edbg_recv_frame): Return correct length as
reported in the response packet, rather than full 512 byte which
are always reported by the CMSIS-DAP layer.  Miscalculations
based on the wrongly reported length caused heap corruption
elsewhere, so this is presumably also a fix for bug #43078.




git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@1344 81a1dc3b-b13d-400b-aceb-764788c761c2
This commit is contained in:
Joerg Wunsch 2014-11-23 20:46:53 +00:00
parent 95da7a137b
commit 979f010e70
3 changed files with 11 additions and 1 deletions

View File

@ -1,3 +1,12 @@
2014-11-23 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
bug #43078: AVRDUDE crashes after sucessfully reading/writing eeprom
* jtag3.c (jtag3_edbg_recv_frame): Return correct length as
reported in the response packet, rather than full 512 byte which
are always reported by the CMSIS-DAP layer. Miscalculations
based on the wrongly reported length caused heap corruption
elsewhere, so this is presumably also a fix for bug #43078.
2014-11-20 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
bug #41561: AVRDUDE 6.0.1/USBasp doesn't write first bytes of

1
NEWS
View File

@ -26,6 +26,7 @@ Current:
after changing lock byte
- bug #41561: AVRDUDE 6.0.1/USBasp doesn't write first bytes of
flash page
- bug #43078: AVRDUDE crashes after sucessfully reading/writing eeprom
* Internals:
- ...

View File

@ -690,7 +690,7 @@ static int jtag3_edbg_recv_frame(PROGRAMMER * pgm, unsigned char **msg) {
*msg = buf;
return rv;
return len;
}
int jtag3_recv(PROGRAMMER * pgm, unsigned char **msg) {