bug #40055: AVRDUDE segfaults when writing eeprom
* main.c: Always clear the UF_AUTO_ERASE flag if either a non-Xmega device was found, or the programmer does not offer a page_erase method. git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@1242 81a1dc3b-b13d-400b-aceb-764788c761c2
This commit is contained in:
parent
3b4dd795b2
commit
e8df20d480
|
@ -1,3 +1,10 @@
|
|||
2013-09-17 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
||||
|
||||
bug #40055: AVRDUDE segfaults when writing eeprom
|
||||
* main.c: Always clear the UF_AUTO_ERASE flag if either a
|
||||
non-Xmega device was found, or the programmer does not offer a
|
||||
page_erase method.
|
||||
|
||||
2013-09-17 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
||||
|
||||
* configure.ac (AC_INIT): Bump version to post-6.0.
|
||||
|
|
2
NEWS
2
NEWS
|
@ -17,7 +17,7 @@ Current:
|
|||
- ...
|
||||
|
||||
* Bugfixes
|
||||
- bug #XXXX: xxx
|
||||
- bug #40055: AVRDUDE segfaults when writing eeprom
|
||||
- patch #XXXX: xxx
|
||||
|
||||
* Internals:
|
||||
|
|
3
main.c
3
main.c
|
@ -1156,6 +1156,8 @@ int main(int argc, char * argv [])
|
|||
} else {
|
||||
AVRMEM * m;
|
||||
const char *memname = (p->flags & AVRPART_HAS_PDI)? "application": "flash";
|
||||
|
||||
uflags &= ~UF_AUTO_ERASE;
|
||||
for (ln=lfirst(updates); ln; ln=lnext(ln)) {
|
||||
upd = ldata(ln);
|
||||
m = avr_locate_mem(p, upd->memtype);
|
||||
|
@ -1163,7 +1165,6 @@ int main(int argc, char * argv [])
|
|||
continue;
|
||||
if ((strcasecmp(m->desc, memname) == 0) && (upd->op == DEVICE_WRITE)) {
|
||||
erase = 1;
|
||||
uflags &= ~UF_AUTO_ERASE;
|
||||
if (quell_progress < 2) {
|
||||
fprintf(stderr,
|
||||
"%s: NOTE: \"%s\" memory has been specified, an erase cycle "
|
||||
|
|
Loading…
Reference in New Issue