diff options
Diffstat (limited to 'src/beaver-target.c')
-rw-r--r-- | src/beaver-target.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/beaver-target.c b/src/beaver-target.c index d0b9ba1..dac84f8 100644 --- a/src/beaver-target.c +++ b/src/beaver-target.c @@ -74,6 +74,8 @@ static gboolean _beaver_target_run_remote (BeaverTarget *target, gchar *cmd, GError **out_err); static gboolean _beaver_target_remote_debug (BeaverTarget *target, gchar *cmd, gchar *cmd_args, GError **out_err); +static gboolean _beaver_target_remote_debug_stop (BeaverTarget *target, + GError **out_err); static void beaver_target_get_property (GObject *object, guint property_id, @@ -148,6 +150,7 @@ beaver_target_class_init (BeaverTargetClass *klass) klass->run_remote_v = _beaver_target_run_remote_v; klass->run_remote = _beaver_target_run_remote; klass->remote_debug = _beaver_target_remote_debug; + klass->remote_debug_stop = _beaver_target_remote_debug_stop; signals[STATE_CHANGED] = g_signal_new ("state-changed", G_OBJECT_CLASS_TYPE (object_class), @@ -236,6 +239,12 @@ beaver_target_remote_debug (BeaverTarget *target, gchar *cmd, gchar *cmd_args, return BEAVER_TARGET_GET_CLASS (target)->remote_debug (target, cmd, cmd_args, error); } +gboolean +beaver_target_remote_debug_stop (BeaverTarget *target, GError **error) +{ + return BEAVER_TARGET_GET_CLASS (target)->remote_debug_stop (target, error); +} + /* default implementations */ static gboolean _beaver_target_run_remote (BeaverTarget *target, gchar *cmd, GError **out_err) @@ -400,6 +409,14 @@ _beaver_target_remote_debug (BeaverTarget *target, gchar *cmd, gchar *cmd_args, } } +static gboolean +_beaver_target_remote_debug_stop (BeaverTarget *target, GError **out_err) +{ + gchar *args[] = { "killall gdbserver", NULL }; + + return beaver_target_run_remote_v (target, args, NULL); +} + static void launcher_child_exited_cb (AnjutaLauncher *launcher, gint child_pid, gint status, gulong time, gpointer userdata) |