XSetCloseDownMode(3) | Library Functions Manual | XSetCloseDownMode(3)

# NAME

XSetCloseDownMode, XKillClient - control clients

# SYNTAX

int XSetCloseDownMode(Display * display, int close_mode);
int XKillClient(Display * display, XID resource);

# ARGUMENTS

close_mode
  Specifies the client close-down mode. You can pass DestroyAll, RetainPermanent, or RetainTemporary.

display
  Specifies the connection to the X server.

resource
  Specifies any resource associated with the client that you want to destroy or AllTemporary.

# DESCRIPTION

The XSetCloseDownMode 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 can generate a BadValue error.
The XKillClient 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 can generate a BadValue error.

# DIAGNOSTICS

BadValue
  Some numeric value falls outside the range of values accepted by the request. Unless a specific range is specified for an argument, the full range defined by the argument's type is accepted. Any argument defined as a set of alternatives can generate this error.

# SEE ALSO

Xlib - C Language X Interface

X Version 11 | XLIB FUNCTIONS