From 8fa7417923b0c84d4410cd5f1c1bf210f3b5cd2c Mon Sep 17 00:00:00 2001 From: Joerg Wunsch Date: Thu, 5 Dec 2013 16:27:54 +0000 Subject: [PATCH] bug #40817: Elf file support (possibly) not working on 6.0.1 windows build * fileio.c (fileio): open file in binary mode also for FMT_ELF git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@1253 81a1dc3b-b13d-400b-aceb-764788c761c2 --- ChangeLog | 5 +++++ NEWS | 1 + fileio.c | 8 ++++++-- 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index e59101a1..ecc3bafc 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2013-12-05 Joerg Wunsch + + bug #40817: Elf file support (possibly) not working on 6.0.1 windows build + * fileio.c (fileio): open file in binary mode also for FMT_ELF + 2013-12-04 Rene Liebscher Rework of bitbanging functions setpin, getpin, highpulsepin to make simplier use diff --git a/NEWS b/NEWS index 0b6aa222..b7787a75 100644 --- a/NEWS +++ b/NEWS @@ -19,6 +19,7 @@ Current: * Bugfixes - bug #40055: AVRDUDE segfaults when writing eeprom - bug #40085: Typo fix in fuses report (for 6.1-svn-20130917) + - bug #40817: Elf file support (possibly) not working on 6.0.1 windows build - patch #XXXX: xxx * Internals: diff --git a/fileio.c b/fileio.c index c636e6b2..85d7f55c 100644 --- a/fileio.c +++ b/fileio.c @@ -1416,7 +1416,11 @@ static int fmt_autodetect(char * fname) int found; int first = 1; +#if defined(WIN32NATIVE) f = fopen(fname, "r"); +#else + f = fopen(fname, "rb"); +#endif if (f == NULL) { fprintf(stderr, "%s: error opening %s: %s\n", progname, fname, strerror(errno)); @@ -1562,8 +1566,8 @@ int fileio(int op, char * filename, FILEFMT format, } #if defined(WIN32NATIVE) - /* Open Raw Binary format in binary mode on Windows.*/ - if(format == FMT_RBIN) + /* Open Raw Binary and ELF format in binary mode on Windows.*/ + if(format == FMT_RBIN || format == FMT_ELF) { if(fio.op == FIO_READ) {