XSetErrorHandler man page on HP-UX

Man page or keyword search:  
man Server   10987 pages
apropos Keyword Search (all sections)
Output format
HP-UX logo
[printable version]

XSetErrorHandler()					    XSetErrorHandler()

Name
  XSetErrorHandler – set a fatal error event handler.

Synopsis
  int (*XSetErrorHandler(handler))()
	int (* handler)(Display *)

Arguments
  handler   The	 user-defined  function	 to  be	 called	 to  handle error
	    events.  If a NULL pointer,	 reinvoke  the	default	 handler,
	    which prints a message and exits.

Returns
  The previous nonfatal error handler.

Description
  The  error handler function specified in handler will be called by Xlib
  whenever an XError event is received.	 These are  nonfatal  conditions,
  such	as unexpected values for arguments, or a failure in server memory
  allocation.  It is acceptable for this procedure to return, though  the
  default  handler simply prints a message and exits.  However, the error
  handler should NOT perform any operations (directly or indirectly) that
  generate protocol requests or that look for input events.

  In Release 4 and Release 5, XSetErrorHandler() returns a pointer to the
  previous error handler.

  The function is called with two arguments:  the display variable and	a
  pointer  to  the XErrorEvent structure.  Here is a trivial example of a
  user-defined error handler:
      int myhandler (display, myerr)
      Display *display;
      XErrorEvent *myerr;
      {
	 char msg[80];
	 XGetErrorText(display, myerr->error_code, msg, 80);
	 fprintf(stderr, "Error code %s\n", msg);
      }

  This is how the example routine would be used in XSetErrorHandler():

      XSetErrorHandler(myhandler);

  Note that XSetErrorHandler() is one of the few routines that	does  not
  require  a  display argument.	 The routine that calls the error handler
  gets the display variable from the XErrorEvent structure.

  The error handler is	not  called  on	 BadName  errors  from	OpenFont,
  LookupColor,	and  AllocNamedColor  protocol	requests,  or  on BadFont
  errors from a QueryFont protocol request.  These errors are  all  indi‐
  cated	 by  Status  return  value of zero in the corresponding Xlib rou‐
  tines, which must be caught and handled by the application.

  Use XIOErrorHandler to provide a handler for I/O errors such as network
  failures or server host crashes.

  In the XErrorEvent structure shown below, the serial member is the num‐
  ber of requests (starting from 1)  sent  over	 the  network  connection
  since	 it  was  opened.   It	is  the	 number that was the value of the
  request sequence number immediately after the failing	 call  was  made.
  The request_code member is a protocol representation of the name of the
  procedure that failed and is defined in <X11/Xproto.h>.

  For more information, see Volume One, Chapter 3, Basic Window Program.

Structures
     typedef struct {
	 int type
	 Display *display;	     /* display the event was read from */
	 XID resourceid;	     /* resource ID */
	 unsigned long serial;	     /* serial number of failed request */
	 unsigned char error_code;   /* error code of failed request */
	 unsigned char request_code; /* major opcode of failed request */
	 unsigned char minor_code;   /* minor opcode of failed request */
     } XErrorEvent;

See Also
  XDisplayName(),  XGetErrorDatabaseText(),  XGetErrorText(),  XSetAfter‐
  Function(), XSetIOErrorHandler(), XSynchronize().

Xlib - Error Handling					    XSetErrorHandler()
[top]

List of man pages available for HP-UX

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net