diff --git a/kitty/keys.c b/kitty/keys.c index e251065aa..5ff37d805 100644 --- a/kitty/keys.c +++ b/kitty/keys.c @@ -172,6 +172,9 @@ on_key_input(GLFWkeyevent *ev) { PyObject *ret = PyObject_CallMethod( global_state.boss, "process_sequence", "O", ke); Py_CLEAR(ke); + // the shortcut could have created a new window or closed the + // window, rendering the pointer no longer valid + w = window_for_window_id(active_window_id); if (ret == NULL) { PyErr_Print(); } else { bool consumed = ret == Py_True;