Recoverable Errors

Recoverable errors are handled by the ProXL Error handler and are any of the following types:


bad_request
If the request made to the X Server was invalid.
bad_value
If an integer argument is out of range.
bad_window
If a Window argument is invalid.
bad_pixmap
If a Pixmap argument is invalid.
bad_atom
If an Atom argument is invalid.
bad_cursor
If a Cursor argument is invalid.
bad_font
If a Font argument is invalid.
bad_match
If there is an argument mismatch.
bad_drawable
If an argument is not a Window or Pixmap.
bad_access
If the operation can't be performed.
bad_alloc
If there are insufficient resources.
bad_color
If there is no such colormap.
bad_gc
If a GC argument is invalid.
bad_id_choice
If the choice is not in the appropriate range or is already in use.
bad_name
If the named Font or Color do not exist.
bad_length
If the request length is incorrect.
bad_implementation
If your server is defective.

ProXL routines do extensive checking of their arguments to try and detect invalid parameters before actually making a call to the X server. However, it is impossible to cover all the cases, and sometimes recoverable errors are signaled by the server.

Recoverable errors invoke a user-definable error handler. Under ProXL, the default error handler provided prints an error message and presents a list of options to the user.

The user can provide her own error handler routine, but it must be written in C and follow the guidelines set up for handlers under X11. The user should read the Xlib X11 documentation on errors and error handling before attempting to do this.