- added patch for new flash functionality like:

flash verify_image and flash erase_address.
- added patch for new parport_write_on_exit command.
Even this patch will fix some memory leaks.

(thanks too oyvind and Spen for these patches)

git-svn-id: svn://svn.berlios.de/openocd/trunk@240 b42882b7-edfa-0310-969c-e2dbd0fdcd60
This commit is contained in:
mifi
2007-12-18 21:20:28 +00:00
parent ed1e9d6abd
commit 02f3765351
15 changed files with 267 additions and 63 deletions

View File

@@ -447,9 +447,14 @@ int gdb_connection_closed(connection_t *connection)
delete_debug_msg_receiver(connection->cmd_ctx, gdb_service->target);
if (connection->priv)
{
free(connection->priv);
connection->priv = NULL;
}
else
{
ERROR("BUG: connection->priv == NULL");
}
target_unregister_event_callback(gdb_target_callback_event_handler, connection);
@@ -1325,7 +1330,7 @@ int gdb_v_packet(connection_t *connection, target_t *target, char *packet, int p
char *error_str;
/* process the flashing buffer */
if ((result = flash_write(gdb_service->target, gdb_connection->vflash_image, &written, &error_str, NULL, 0)) != ERROR_OK)
if ((result = flash_image_operation(gdb_service->target, gdb_connection->vflash_image, &written, &error_str, NULL, flash_image_op_write)) != ERROR_OK)
{
if (result == ERROR_FLASH_DST_OUT_OF_BANK)
gdb_put_packet(connection, "E.memtype", 9);

View File

@@ -230,6 +230,8 @@ int remove_services()
c = next;
}
services = NULL;
return ERROR_OK;
}
@@ -454,3 +456,4 @@ int handle_shutdown_command(struct command_context_s *cmd_ctx, char *cmd, char *
return ERROR_COMMAND_CLOSE_CONNECTION;
}

View File

@@ -506,21 +506,32 @@ int telnet_connection_closed(connection_t *connection)
int i;
if (t_con->prompt)
{
free(t_con->prompt);
t_con->prompt = NULL;
}
for (i = 0; i < TELNET_LINE_HISTORY_SIZE; i++)
{
if (t_con->history[i])
{
free(t_con->history[i]);
t_con->history[i] = NULL;
}
}
/* if this connection registered a debug-message receiver delete it */
delete_debug_msg_receiver(connection->cmd_ctx, NULL);
if (connection->priv)
{
free(connection->priv);
connection->priv = NULL;
}
else
{
ERROR("BUG: connection->priv == NULL");
}
target_unregister_event_callback(telnet_target_callback_event_handler, connection->cmd_ctx);