From ccc2e3fe760a425f831b9e1f0e143d7d01d73a25 Mon Sep 17 00:00:00 2001 From: oharboe Date: Wed, 15 Oct 2008 11:44:36 +0000 Subject: Laurentiu Cocanu - memory read/write and exit() error path fixes git-svn-id: svn://svn.berlios.de/openocd/trunk@1064 b42882b7-edfa-0310-969c-e2dbd0fdcd60 --- src/jtag/ft2232.c | 4 ++-- src/jtag/jtag.c | 7 +++++-- 2 files changed, 7 insertions(+), 4 deletions(-) (limited to 'src/jtag') diff --git a/src/jtag/ft2232.c b/src/jtag/ft2232.c index 6fdb546e..6754d9aa 100644 --- a/src/jtag/ft2232.c +++ b/src/jtag/ft2232.c @@ -410,7 +410,7 @@ int ft2232_send_and_recv(jtag_command_t *first, jtag_command_t *last) if ((retval = ft2232_write(ft2232_buffer, ft2232_buffer_size, &bytes_written)) != ERROR_OK) { LOG_ERROR("couldn't write MPSSE commands to FT2232"); - exit(-1); + return retval; } #ifdef _DEBUG_USB_IO_ @@ -429,7 +429,7 @@ int ft2232_send_and_recv(jtag_command_t *first, jtag_command_t *last) if ((retval = ft2232_read(ft2232_buffer, ft2232_expect_read, &bytes_read)) != ERROR_OK) { LOG_ERROR("couldn't read from FT2232"); - exit(-1); + return retval; } #ifdef _DEBUG_USB_IO_ diff --git a/src/jtag/jtag.c b/src/jtag/jtag.c index 90d52d0f..0af99f93 100644 --- a/src/jtag/jtag.c +++ b/src/jtag/jtag.c @@ -1720,6 +1720,7 @@ static int default_speed_div(int speed, int *khz) int handle_interface_command(struct command_context_s *cmd_ctx, char *cmd, char **args, int argc) { int i; + int retval; /* check whether the interface is already configured */ if (jtag_interface) @@ -1738,8 +1739,10 @@ int handle_interface_command(struct command_context_s *cmd_ctx, char *cmd, char { if (strcmp(args[0], jtag_interfaces[i]->name) == 0) { - if (jtag_interfaces[i]->register_commands(cmd_ctx) != ERROR_OK) - exit(-1); + if ((retval = jtag_interfaces[i]->register_commands(cmd_ctx)) != ERROR_OK) + { + return retval; + } jtag_interface = jtag_interfaces[i]; -- cgit v1.2.3