diff options
Diffstat (limited to 'src/client.c')
-rw-r--r-- | src/client.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/client.c b/src/client.c index cda3fa5c9..01df0d9af 100644 --- a/src/client.c +++ b/src/client.c @@ -1138,6 +1138,14 @@ clientFree (Client * c) { XFree (c->class.res_class); } + if (c->dialog_pid) + { + kill (c->dialog_pid, SIGKILL); + } + if (c->dialog_fd >= 0) + { + close (c->dialog_fd); + } g_free (c); } @@ -1550,6 +1558,10 @@ clientFrame (DisplayInfo *display_info, Window w, gboolean recapture) c->screen_info = screen_info; c->serial = screen_info->client_serial++; + /* Termination dialog */ + c->dialog_pid = 0; + c->dialog_fd = -1; + getWindowName (display_info, c->window, &c->name); getWindowHostname (display_info, c->window, &c->hostname); getTransientFor (display_info, screen_info->xroot, c->window, &c->transient_for); |