XSetCloseDownMode(), XKillClient() - control clients
XSetCloseDownMode (Display *display, int close_mode)
XKillClient (Display *display, XID resource)
The XSetCloseDownMode(3) defines what will happen to the client's resources at connection close. A connection starts in DestroyAll mode. For information on what happens to the client's resources when the close_mode argument is RetainPermanent or RetainTemporary, see section 2.6.
XSetCloseDownMode(3) can generate a BadValue error.
The XKillClient(3) function forces a close-down of the client that created the resource if a valid resource is specified. If the client has already terminated in either RetainPermanent or RetainTemporary mode, all of the client's resources are destroyed. If AllTemporary is specified, the resources of all clients that have terminated in RetainTemporary are destroyed (see section 2.5). This permits implementation of window manager facilities that aid debugging. A client can set its close-down mode to RetainTemporary. If the client then crashes, its windows would not be destroyed. The programmer can then inspect the application's window tree and use the window manager to destroy the zombie windows.
XKillClient(3) can generate a BadValue error.
Xlib