summaryrefslogtreecommitdiff
path: root/openbox/keyboard.c
diff options
context:
space:
mode:
authorDana Jansens <danakj@orodu.net>2003-09-28 06:31:00 +0000
committerDana Jansens <danakj@orodu.net>2003-09-28 06:31:00 +0000
commitf6ba1f27b9790f56bda1e5831069e2dd7e2c96a2 (patch)
treeeab63d53f7acd59f0e835b359468d2475aacd5a4 /openbox/keyboard.c
parent518f819cdb18ea68b5d1bf93cd3d44737ef27915 (diff)
halfway through client changes but...
should fix crashes irt actions in the action queue for clients that have been destroyed. now those actions are skipped or performed without a client as possible.
Diffstat (limited to 'openbox/keyboard.c')
-rw-r--r--openbox/keyboard.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/openbox/keyboard.c b/openbox/keyboard.c
index b1d1d223..11b3a985 100644
--- a/openbox/keyboard.c
+++ b/openbox/keyboard.c
@@ -197,17 +197,16 @@ void keyboard_interactive_end(ObInteractiveState *s,
}
}
-void keyboard_interactive_end_client(gpointer data)
+void keyboard_interactive_end_client(ObClient *client, gpointer data)
{
GSList *it, *next;
- ObClient *c = data;
for (it = interactive_states; it; it = next) {
ObInteractiveState *s = it->data;
next = g_slist_next(it);
- if (s->client == c)
+ if (s->client == client)
s->client = NULL;
}
}
@@ -291,7 +290,7 @@ void keyboard_startup(gboolean reconfig)
grab_keys(TRUE);
if (!reconfig)
- client_add_destructor(keyboard_interactive_end_client);
+ client_add_destructor(keyboard_interactive_end_client, NULL);
}
void keyboard_shutdown(gboolean reconfig)