The branch, master has been updated
via 4359228aaa6840b20f4cf6b61bf156b9354a0f80 (commit)
from 8ffe1c1dbcb9fa1e5cafa2625bf4340fa4ef6fea (commit)
- Log -----------------------------------------------------------------
commit 4359228aaa6840b20f4cf6b61bf156b9354a0f80
Author: Uwe Bonnes <bon@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx>
Date: Thu Sep 8 10:11:14 2011 +0200
ftdi_eeprom/main.c: Malloc the eeprom Buffer with the size exported by the
API
-----------------------------------------------------------------------
Summary of changes:
ftdi_eeprom/main.c | 13 +++++++++++--
1 files changed, 11 insertions(+), 2 deletions(-)
diff --git a/ftdi_eeprom/main.c b/ftdi_eeprom/main.c
index df7c877..931045f 100644
--- a/ftdi_eeprom/main.c
+++ b/ftdi_eeprom/main.c
@@ -145,7 +145,7 @@ int main(int argc, char *argv[])
int _read = 0, _erase = 0, _flash = 0;
int my_eeprom_size = 0;
- unsigned char eeprom_buf[FTDI_MAX_EEPROM_SIZE];
+ unsigned char *eeprom_buf = NULL;
char *filename;
int size_check;
int i, argc_filename;
@@ -264,9 +264,16 @@ int main(int argc, char *argv[])
printf("serial = \"%s\"\n", eeprom->serial);
*/
+ eeprom_buf = malloc(my_eeprom_size);
+ ftdi_get_eeprom_buf(ftdi, eeprom_buf, my_eeprom_size);
+
+ if (eeprom_buf == NULL)
+ {
+ fprintf(stderr, "Malloc failed, aborting\n");
+ goto cleanup;
+ }
if (filename != NULL && strlen(filename) > 0)
{
- ftdi_get_eeprom_buf(ftdi, eeprom_buf, my_eeprom_size);
FILE *fp = fopen (filename, "wb");
fwrite (eeprom_buf, 1, my_eeprom_size, fp);
@@ -368,6 +375,8 @@ int main(int argc, char *argv[])
}
cleanup:
+ if (eeprom_buf)
+ free(eeprom_buf);
if (_read > 0 || _erase > 0 || _flash > 0)
{
printf("FTDI close: %d\n", ftdi_usb_close(ftdi));
hooks/post-receive
--
port libftdi to libusb-1.0
--
libftdi-git - see http://www.intra2net.com/en/developer/libftdi for details.
To unsubscribe send a mail to libftdi-git+unsubscribe@xxxxxxxxxxxxxxxxxxxxxxx
|