The branch, master has been updated
via bd4a9e3887010062474a368c8eee6f9e4ce012b4 (commit)
from 1077197170cbdce90a24aa0ff3e6b94c36552877 (commit)
- Log -----------------------------------------------------------------
commit bd4a9e3887010062474a368c8eee6f9e4ce012b4
Author: Uwe Bonnes <bon@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx>
Date: Mon Jun 20 16:03:53 2011 +0200
Clean up in error pathes
-----------------------------------------------------------------------
Summary of changes:
examples/eeprom.c | 37 ++++++++++++++++++++++++-------------
1 files changed, 24 insertions(+), 13 deletions(-)
diff --git a/examples/eeprom.c b/examples/eeprom.c
index 1a11e3b..022cf03 100644
--- a/examples/eeprom.c
+++ b/examples/eeprom.c
@@ -26,6 +26,7 @@ int main(int argc, char **argv)
int do_write = 0;
int size;
int value;
+ int retval = 0;
if ((ftdi = ftdi_new()) == 0)
{
@@ -74,7 +75,8 @@ int main(int argc, char **argv)
"product description\n");
fprintf(stderr, "\t-S <string? Search for device with given "
"serial number\n");
- exit(-1);
+ retval = -1;
+ goto done;
}
}
@@ -94,7 +96,8 @@ int main(int argc, char **argv)
fprintf(stderr, "unable to open ftdi device: %d (%s)\n",
f, ftdi_get_error_string(ftdi));
- exit(-1);
+ retval = -1;
+ goto done;
}
if (erase)
@@ -104,7 +107,8 @@ int main(int argc, char **argv)
{
fprintf(stderr, "Erase failed: %s",
ftdi_get_error_string(ftdi));
- return -2;
+ retval = -2;
+ goto done;
}
if (ftdi_get_eeprom_value(ftdi, CHIP_TYPE, & value) <0)
{
@@ -117,12 +121,13 @@ int main(int argc, char **argv)
fprintf(stderr, "Internal EEPROM\n");
else
fprintf(stderr, "Found 93x%02x\n", value);
- return 0;
+ retval = 0;
+ goto done;
}
if (use_defaults)
{
- ftdi_eeprom_initdefaults(ftdi, "IKDA", "FTDIJTAG", "0001");
+ ftdi_eeprom_initdefaults(ftdi, NULL, NULL, NULL);
if (ftdi_set_eeprom_value(ftdi, MAX_POWER, 500) <0)
{
fprintf(stderr, "ftdi_set_eeprom_value: %d (%s)\n",
@@ -139,12 +144,13 @@ int main(int argc, char **argv)
{
fprintf(stderr, "ftdi_eeprom_build: %d (%s)\n",
f, ftdi_get_error_string(ftdi));
- exit(-1);
+ retval = -1;
+ goto done;
}
}
else if (do_write)
{
- ftdi_eeprom_initdefaults(ftdi, "IKDA", "FTDIJTAG", "0001");
+ ftdi_eeprom_initdefaults(ftdi, NULL, NULL, NULL);
f = ftdi_erase_eeprom(ftdi);
if (ftdi_set_eeprom_value(ftdi, MAX_POWER, 500) <0)
{
@@ -168,13 +174,15 @@ int main(int argc, char **argv)
{
fprintf(stderr, "Erase failed: %s",
ftdi_get_error_string(ftdi));
- return -2;
+ retval = -2;
+ goto done;
}
f = ftdi_write_eeprom(ftdi);
{
fprintf(stderr, "ftdi_eeprom_decode: %d (%s)\n",
f, ftdi_get_error_string(ftdi));
- exit(-1);
+ retval = 1;
+ goto done;
}
}
f = ftdi_read_eeprom(ftdi);
@@ -182,7 +190,8 @@ int main(int argc, char **argv)
{
fprintf(stderr, "ftdi_read_eeprom: %d (%s)\n",
f, ftdi_get_error_string(ftdi));
- exit(-1);
+ retval = -1;
+ goto done;
}
@@ -190,7 +199,8 @@ int main(int argc, char **argv)
if (value <0)
{
fprintf(stderr, "No EEPROM found\n");
- return -1;
+ retval = -1;
+ goto done;
}
fprintf(stderr, "Chip type %d ftdi_eeprom_size: %d\n", ftdi->type, value);
@@ -222,10 +232,11 @@ int main(int argc, char **argv)
{
fprintf(stderr, "ftdi_eeprom_decode: %d (%s)\n",
f, ftdi_get_error_string(ftdi));
- exit(-1);
+ retval = -1;
}
+done:
ftdi_usb_close(ftdi);
ftdi_free(ftdi);
- return 0;
+ return retval;
}
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
|