summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/server/gdb_server.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/server/gdb_server.c b/src/server/gdb_server.c
index a0077e93..00de5fc6 100644
--- a/src/server/gdb_server.c
+++ b/src/server/gdb_server.c
@@ -2191,7 +2191,12 @@ int gdb_input_inner(connection_t *connection)
{
if (target->state == TARGET_RUNNING)
{
- target_halt(target);
+ retval = target_halt(target);
+ if (retval != ERROR_OK)
+ {
+ /* stop this debug session */
+ target_call_event_callbacks(target, TARGET_EVENT_GDB_HALT);
+ }
gdb_con->ctrl_c = 0;
}
}