diff options
Diffstat (limited to 'src/fe-common/core/window-commands.c')
-rw-r--r-- | src/fe-common/core/window-commands.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/src/fe-common/core/window-commands.c b/src/fe-common/core/window-commands.c index f3e56a90..a8f3bb10 100644 --- a/src/fe-common/core/window-commands.c +++ b/src/fe-common/core/window-commands.c @@ -280,6 +280,8 @@ static WINDOW_REC *window_highest_activity(WINDOW_REC *window) static void cmd_window_goto(const char *data) { WINDOW_REC *window; + char *target; + void *free_arg; g_return_if_fail(data != NULL); @@ -288,13 +290,18 @@ static void cmd_window_goto(const char *data) return; } - if (g_strcasecmp(data, "active") == 0) + if (!cmd_get_params(data, &free_arg, 1, &target)) + return; + + if (g_strcasecmp(target, "active") == 0) window = window_highest_activity(active_win); else - window = window_find_item(active_win->active_server, data); + window = window_find_item(active_win->active_server, target); if (window != NULL) window_set_active(window); + + cmd_params_free(free_arg); } /* SYNTAX: WINDOW NEXT */ |