		      Release 5 Public Patch #19
			   MIT X Consortium

This patch comes in two parts: this file, and the file "PEXlib.tar.Z".

(If you obtain this patch via the xstuff mail daemon, the second part
is made from "PEXlib.uu.1", "PEXlib.uu.2", "PEXlib.uu.3", and "PEXlib.uu.4",
which you must concatenate together to produce "PEXlib.uu" and then do
	uudecode PEXlib.uu
to produce "PEXlib.tar.Z".)

To apply this patch:

cd to the top of the source tree (to the directory containing the "mit"
and "contrib" subdirectories) and do:
	patch -p -s < ThisFile
Patch will work silently unless an error occurs.
If you want to watch patch do its thing, leave out the "-s" argument to patch.

Next, from the same top-level directory do:
	uncompress -c PEXlib.tar.Z | tar xfp -

This patch creates new files in a new directory, mit/extensions/lib/PEXlib.
If you are using a symbolic link tree, you will need to create new links.

Finally, to rebuild after applying this patch, cd to the "mit" subdirectory
and do:
	make Everything >& every.log
Note: this will *not* "clean" your tree.

Brief notes on what this patch provides:

PEXlib: add implementation of PEXlib, a new X Consortium standard
Xlib: improve extension error reporting

(Yes, the pre-req is for patch 17; patch 18 did not alter bug-report.
But you must apply patch 18 before this one.)

Prereq: public-patch-17

*** /tmp/,RCSt1009632	Mon Nov 16 12:28:01 1992
--- mit/bug-report	Mon Nov 16 12:27:52 1992
***************
*** 2,8 ****
  Subject: [area]: [synopsis]   [replace with actual area and short description]
  
  VERSION:
!     R5, public-patch-17
      [MIT public patches will edit this line to indicate the patch level]
  
  CLIENT MACHINE and OPERATING SYSTEM:
--- 2,8 ----
  Subject: [area]: [synopsis]   [replace with actual area and short description]
  
  VERSION:
!     R5, public-patch-19
      [MIT public patches will edit this line to indicate the patch level]
  
  CLIENT MACHINE and OPERATING SYSTEM:
*** /tmp/,RCSt1009687	Mon Nov 16 12:44:47 1992
--- mit/extensions/lib/Imakefile	Mon Nov 16 12:44:18 1992
***************
*** 1,4 ****
! XCOMM $XConsortium: Imakefile,v 1.33.1.1 92/09/09 15:29:32 rws Exp $
  #define DoNormalLib NormalLibXext
  #define DoSharedLib SharedLibXext
  #define DoDebugLib DebugLibXext
--- 1,4 ----
! XCOMM $XConsortium: Imakefile,v 1.33.1.2 92/11/16 12:44:08 rws Exp $
  #define DoNormalLib NormalLibXext
  #define DoSharedLib SharedLibXext
  #define DoDebugLib DebugLibXext
***************
*** 15,21 ****
        XINPUTDIRS = xinput
  #endif
  #if BuildPexClients
!       PEXDIRS = PEX
  #endif
        SUBDIRS = $(XINPUTDIRS) $(PEXDIRS) xtest
  
--- 15,21 ----
        XINPUTDIRS = xinput
  #endif
  #if BuildPexClients
!       PEXDIRS = PEX PEXlib
  #endif
        SUBDIRS = $(XINPUTDIRS) $(PEXDIRS) xtest
  
*** /tmp/,RCSt1002929	Wed Nov 11 09:59:26 1992
--- mit/config/Project.tmpl	Wed Nov 11 09:59:29 1992
***************
*** 1,6 ****
  XCOMM -------------------------------------------------------------------------
  XCOMM X Window System Build Parameters
! XCOMM $XConsortium: Project.tmpl,v 1.138 91/09/10 09:02:12 rws Exp $
  
  /*****************************************************************************
   *                                                                           *
--- 1,6 ----
  XCOMM -------------------------------------------------------------------------
  XCOMM X Window System Build Parameters
! XCOMM $XConsortium: Project.tmpl,v 1.138.1.1 92/11/11 09:49:19 rws Exp $
  
  /*****************************************************************************
   *                                                                           *
***************
*** 123,128 ****
--- 123,134 ----
  #ifndef ProfileLibXdmcp
  #define ProfileLibXdmcp		NO	/* profiled XDMCP library */
  #endif
+ #ifndef DebugLibPex
+ #define DebugLibPex		NO	/* debugged PEX5 library */
+ #endif
+ #ifndef ProfileLibPex
+ #define ProfileLibPex		NO	/* profiled PEX5 library */
+ #endif
  #ifndef ManDirectoryRoot
  #ifdef ProjectRoot
  #define ManDirectoryRoot Concat(ProjectRoot,/man)
***************
*** 434,439 ****
--- 440,451 ----
  #ifndef NormalLibXinput
  #define NormalLibXinput (!SharedLibXinput | ForceNormalLib)
  #endif
+ #ifndef SharedLibPex
+ #define SharedLibPex HasSharedLibraries
+ #endif
+ #ifndef NormalLibPex
+ #define NormalLibPex (!SharedLibPex | ForceNormalLib)
+ #endif
  #ifndef SharedLibPhigs
  #define SharedLibPhigs NO	/* XXX - haven't made it sharable yet */
  #endif
***************
*** 538,543 ****
--- 550,556 ----
      FONTSERVERSRC = $(FONTSRC)/server
       EXTENSIONSRC = $(TOP)/extensions
           XILIBSRC = $(EXTENSIONSRC)/lib/xinput
+         PEXLIBSRC = $(EXTENSIONSRC)/lib/PEXlib
        PHIGSLIBSRC = $(EXTENSIONSRC)/lib/PEX
  
  /*
***************
*** 586,591 ****
--- 599,605 ----
           SOXMUREV = SharedXmuRev
          SOXEXTREV = SharedXextRev
        SOXINPUTREV = SharedXinputRev
+          SOPEXREV = SharedPexRev
  #endif
  
  #if !SharedLibXext
***************
*** 620,625 ****
--- 634,643 ----
          DEPXILIB = _UseCat($(USRLIBDIR),$(XILIBSRC),/libXi.a)
             XILIB = LoaderLibPrefix _Use(-lXi,$(DEPXILIB))
  #endif
+ #if !SharedLibPex
+        DEPPEXLIB = _UseCat($(USRLIBDIR),$(PEXLIBSRC),/libPEX5.a)
+           PEXLIB = LoaderLibPrefix _Use(-lPEX5,$(DEPPEXLIB))
+ #endif
  #if !SharedLibPhigs
          DEPPHIGSLIB = _UseCat($(USRLIBDIR),$(PHIGSLIBSRC),/libphigs.a)
             PHIGSLIB = LoaderLibPrefix _Use(-lphigs,$(DEPPHIGSLIB))
***************
*** 633,638 ****
--- 651,657 ----
          LINTXTOOL = _UseCat($(LINTLIBDIR),$(TOOLKITSRC),/llib-lXt.ln)
            LINTXAW = _UseCat($(LINTLIBDIR),$(AWIDGETSRC),/llib-lXaw.ln)
             LINTXI = _UseCat($(LINTLIBDIR),$(XILIBSRC),/llib-lXi.ln)
+           LINTPEX = _UseCat($(LINTLIBDIR),$(PEXLIBSRC),/llib-lPEX5.ln)
          LINTPHIGS = _UseCat($(LINTLIBDIR),$(PHIGSLIBSRC),/llib-lphigs.ln)
  
  #ifndef XawClientDepLibs
*** /tmp/,RCSt1002938	Wed Nov 11 10:00:22 1992
--- mit/config/ibmLib.tmpl	Wed Nov 11 10:00:23 1992
***************
*** 1,4 ****
! XCOMM $XConsortium: ibmLib.tmpl,v 1.2 91/05/04 11:49:00 rws Exp $
  
  /*
   * AIX shared library template
--- 1,4 ----
! XCOMM $XConsortium: ibmLib.tmpl,v 1.2.1.1 92/11/11 09:50:49 rws Exp $
  
  /*
   * AIX shared library template
***************
*** 37,40 ****
--- 37,44 ----
  #if SharedLibXinput
          DEPXILIB = /* _UseCat($(USRLIBDIR),$(XILIBSRC),/libXi.a) */
             XILIB = _Use(-lXi,-L$(XILIBSRC) -lXi)
+ #endif
+ #if SharedLibPex
+         DEPPEXLIB = /* _UseCat($(USRLIBDIR),$(PEXLIBSRC),/libPEX5.a */
+            PEXLIB = _Use(-lPEX5,-L$(PEXLIBSRC) -lPEX5)
  #endif
*** /tmp/,RCSt1002945	Wed Nov 11 10:01:01 1992
--- mit/config/sgi.cf	Wed Nov 11 10:01:03 1992
***************
*** 1,4 ****
! XCOMM platform:  $XConsortium: sgi.cf,v 1.19 91/07/28 22:39:45 rws Exp $
  
  #define OSName			IRIX
  XCOMM operating system:  OSName
--- 1,4 ----
! XCOMM platform:  $XConsortium: sgi.cf,v 1.19.1.1 92/11/11 09:51:39 rws Exp $
  
  #define OSName			IRIX
  XCOMM operating system:  OSName
***************
*** 30,36 ****
  
  #define CCPreprocessorFlags /* As Nothing For the Standard "cpp" */
  
! #define SymbolTables -Wf,-XNh2000
  #define PexSymbolTables -Wf,-XNp15000,-XNd15000,-XNh2000
  
  /* NOTE: the SGI cc driver invoking the ANSI cpp does NOT define __STDC__ */
--- 30,36 ----
  
  #define CCPreprocessorFlags /* As Nothing For the Standard "cpp" */
  
! #define SymbolTables -Wf,-XNp9000,-XNd8000,-XNh2000
  #define PexSymbolTables -Wf,-XNp15000,-XNd15000,-XNh2000
  
  /* NOTE: the SGI cc driver invoking the ANSI cpp does NOT define __STDC__ */
*** /tmp/,RCSt1002952	Wed Nov 11 10:01:35 1992
--- mit/config/sony.cf	Wed Nov 11 10:01:37 1992
***************
*** 1,4 ****
! XCOMM platform:  $XConsortium: sony.cf,v 1.36 91/08/21 11:16:04 rws Exp $
  
  #ifdef SonyBsdArchitecture
  
--- 1,4 ----
! XCOMM platform:  $XConsortium: sony.cf,v 1.36.1.1 92/11/11 09:52:20 rws Exp $
  
  #ifdef SonyBsdArchitecture
  
***************
*** 45,51 ****
  #define SystemV4		YES
  #define CcCmd			/usr/bin/cc
  #define HasSockets		YES
! #define DefaultCCOptions	-Wf,-XNp6000,-XNd6000
  #define PexCCOptions		-Wf,-XNp15000,-XNd15000
  
  #endif
--- 45,51 ----
  #define SystemV4		YES
  #define CcCmd			/usr/bin/cc
  #define HasSockets		YES
! #define DefaultCCOptions	-Wf,-XNp8000,-XNd6000
  #define PexCCOptions		-Wf,-XNp15000,-XNd15000
  
  #endif
*** /tmp/,RCSt1002959	Wed Nov 11 10:02:11 1992
--- mit/config/sunLib.tmpl	Wed Nov 11 10:02:12 1992
***************
*** 1,4 ****
! XCOMM $XConsortium: sunLib.tmpl,v 1.14.1.1 92/03/17 14:58:46 rws Exp $
  
  /*
   * SunOS shared library template
--- 1,4 ----
! XCOMM $XConsortium: sunLib.tmpl,v 1.14.1.2 92/11/11 09:55:02 rws Exp $
  
  /*
   * SunOS shared library template
***************
*** 28,33 ****
--- 28,36 ----
  #ifndef SharedXTrapRev
  #define SharedXTrapRev 1.0
  #endif
+ #ifndef SharedPexRev
+ #define SharedPexRev 1.0
+ #endif
  
  SHLIBLDFLAGS = SharedLibraryLoadFlags
  PICFLAGS = PositionIndependentCFlags
***************
*** 68,71 ****
--- 71,78 ----
  #if SharedLibXinput
          DEPXILIB = /* _UseCat($(USRLIBDIR),$(XILIBSRC),/libXi.sa.$(SOXINPUTREV)) */
             XILIB = _Use(-lXi,-L$(XILIBSRC) -lXi)
+ #endif
+ #if SharedLibPex
+         DEPPEXLIB = /* _UseCat($(USRLIBDIR),$(PEXLIBSRC),/libPEX5.sa.$(SOPEXREV)) */
+            PEXLIB = _Use(-lPEX5,-L$(PEXLIBSRC) -lPEX5)
  #endif
*** /tmp/,RCSt1002966	Wed Nov 11 10:02:45 1992
--- mit/config/sv4Lib.tmpl	Wed Nov 11 10:02:47 1992
***************
*** 1,4 ****
! XCOMM $XConsortium: sv4Lib.tmpl,v 1.4 91/07/19 15:38:11 rws Exp $
  
  /*
   * SVR4 shared library template
--- 1,4 ----
! XCOMM $XConsortium: sv4Lib.tmpl,v 1.4.1.1 92/11/11 09:57:17 rws Exp $
  
  /*
   * SVR4 shared library template
***************
*** 25,30 ****
--- 25,33 ----
  #ifndef SharedXinputRev
  #define SharedXinputRev 5.0
  #endif
+ #ifndef SharedPexRev
+ #define SharedPexRev 1.0
+ #endif
  
  SHLIBLDFLAGS = SharedLibraryLoadFlags
  PICFLAGS = PositionIndependentCFlags
***************
*** 66,69 ****
--- 69,76 ----
  #if SharedLibXinput
          DEPXILIB = /* _UseCat($(USRLIBDIR),$(XILIBSRC),/libXi.sa.$(SOXINPUTREV)) */
             XILIB = _Use(-lXi,-L$(XILIBSRC) -lXi)
+ #endif
+ #if SharedLibPex
+         DEPPEXLIB = /* _UseCat($(USRLIBDIR),$(PEXLIBSRC),/libPEX5.sa.$(SOPEXREV)) */
+          PEXLIB = _Use(-lPEX5,-L$(PEXLIBSRC) -lPEX5)
  #endif
*** /tmp/,RCSt1002973	Wed Nov 11 10:03:23 1992
--- mit/config/ultrix.cf	Wed Nov 11 10:03:24 1992
***************
*** 1,4 ****
! XCOMM platform:  $XConsortium: ultrix.cf,v 1.45 91/07/30 12:12:11 rws Exp $
  
  #define OSName            Ultrix-32 4.2
  XCOMM operating system:  OSName
--- 1,4 ----
! XCOMM platform:  $XConsortium: ultrix.cf,v 1.45.1.1 92/11/11 09:58:08 rws Exp $
  
  #define OSName            Ultrix-32 4.2
  XCOMM operating system:  OSName
***************
*** 14,19 ****
--- 14,20 ----
  #ifdef VaxArchitecture
  #define XqdssServer YES
  #define XqvssServer YES
+ #define PexNativeFPFormat PEXDEC_F_Floating
  #define UnalignedReferencesAllowed YES	       /* if arbitrary deref is okay */
  #if HasGcc
  #define BuildPexExt XqdssServer
*** /tmp/,RCSt1002984	Wed Nov 11 10:05:47 1992
--- mit/lib/X/XErrDes.c	Thu Jul 23 19:18:13 1992
***************
*** 1,5 ****
  /*
!  * $XConsortium: XErrDes.c,v 11.45 91/05/04 14:02:29 rws Exp $
   */
  
  /***********************************************************
--- 1,5 ----
  /*
!  * $XConsortium: XErrDes.c,v 11.46 92/07/23 19:17:33 rws Exp $
   */
  
  /***********************************************************
***************
*** 73,80 ****
      char *buffer;
      int nbytes;
  {
!     char buf[32];
      register _XExtension *ext;
  
      if (nbytes == 0) return;
      if (code <= BadImplementation && code > 0) {
--- 73,81 ----
      char *buffer;
      int nbytes;
  {
!     char buf[150];
      register _XExtension *ext;
+     _XExtension *bext = (_XExtension *)NULL;
  
      if (nbytes == 0) return;
      if (code <= BadImplementation && code > 0) {
***************
*** 82,94 ****
  	XGetErrorDatabaseText(dpy, "XProtoError", buf, _XErrorList[code],
  			      buffer, nbytes);
      } else
! 	sprintf(buffer, "%d", code);
      ext = dpy->ext_procs;
      while (ext) {		/* call out to any extensions interested */
   	if (ext->error_string != NULL) 
   	    (*ext->error_string)(dpy, code, &ext->codes, buffer, nbytes);
   	ext = ext->next;
      }    
      return;
  }
  
--- 83,105 ----
  	XGetErrorDatabaseText(dpy, "XProtoError", buf, _XErrorList[code],
  			      buffer, nbytes);
      } else
! 	buffer[0] = '\0';
      ext = dpy->ext_procs;
      while (ext) {		/* call out to any extensions interested */
   	if (ext->error_string != NULL) 
   	    (*ext->error_string)(dpy, code, &ext->codes, buffer, nbytes);
+ 	if (ext->codes.first_error &&
+ 	    ext->codes.first_error < code &&
+ 	    (!bext || ext->codes.first_error > bext->codes.first_error))
+ 	    bext = ext;
   	ext = ext->next;
      }    
+     if (!buffer[0] && bext) {
+ 	sprintf(buf, "%s.%d", bext->name, code - bext->codes.first_error);
+ 	XGetErrorDatabaseText(dpy, "XProtoError", buf, "", buffer, nbytes);
+     }
+     if (!buffer[0])
+ 	sprintf(buffer, "%d", code);
      return;
  }
  
*** /tmp/,RCSt1003009	Wed Nov 11 10:11:45 1992
--- mit/lib/X/XlibInt.c	Wed Nov 11 10:11:50 1992
***************
*** 1,5 ****
  /*
!  * $XConsortium: XlibInt.c,v 11.156 91/11/08 15:15:12 eswu Exp $
   */
  
  /* Copyright    Massachusetts Institute of Technology    1985, 1986, 1987 */
--- 1,5 ----
  /*
!  * $XConsortium: XlibInt.c,v 11.156.1.1 92/11/11 10:10:50 rws Exp $
   */
  
  /* Copyright    Massachusetts Institute of Technology    1985, 1986, 1987 */
***************
*** 1280,1285 ****
--- 1280,1286 ----
      char number[32];
      char *mtype = "XlibMessage";
      register _XExtension *ext = (_XExtension *)NULL;
+     _XExtension *bext = (_XExtension *)NULL;
      XGetErrorText(dpy, event->error_code, buffer, BUFSIZ);
      XGetErrorDatabaseText(dpy, mtype, "XError", "X Error", mesg, BUFSIZ);
      (void) fprintf(fp, "%s:  %s\n  ", mesg, buffer);
***************
*** 1299,1308 ****
  	else
  	    buffer[0] = '\0';
      }
!     (void) fprintf(fp, " (%s)\n  ", buffer);
      if (event->request_code >= 128) {
  	XGetErrorDatabaseText(dpy, mtype, "MinorCode", "Request Minor code %d",
  			      mesg, BUFSIZ);
  	(void) fprintf(fp, mesg, event->minor_code);
  	if (ext) {
  	    sprintf(mesg, "%s.%d", ext->name, event->minor_code);
--- 1300,1310 ----
  	else
  	    buffer[0] = '\0';
      }
!     (void) fprintf(fp, " (%s)\n", buffer);
      if (event->request_code >= 128) {
  	XGetErrorDatabaseText(dpy, mtype, "MinorCode", "Request Minor code %d",
  			      mesg, BUFSIZ);
+ 	fputs("  ", fp);
  	(void) fprintf(fp, mesg, event->minor_code);
  	if (ext) {
  	    sprintf(mesg, "%s.%d", ext->name, event->minor_code);
***************
*** 1309,1323 ****
  	    XGetErrorDatabaseText(dpy, "XRequest", mesg, "", buffer, BUFSIZ);
  	    (void) fprintf(fp, " (%s)", buffer);
  	}
! 	fputs("\n  ", fp);
      }
      if (event->error_code >= 128) {
- 	/* let extensions try to print the values */
- 	for (ext = dpy->ext_procs; ext; ext = ext->next) {
- 	    if (ext->error_values)
- 		(*ext->error_values)(dpy, event, fp);
- 	}
- 	/* the rest is a fallback, providing a simple default */
  	/* kludge, try to find the extension that caused it */
  	buffer[0] = '\0';
  	for (ext = dpy->ext_procs; ext; ext = ext->next) {
--- 1311,1319 ----
  	    XGetErrorDatabaseText(dpy, "XRequest", mesg, "", buffer, BUFSIZ);
  	    (void) fprintf(fp, " (%s)", buffer);
  	}
! 	fputs("\n", fp);
      }
      if (event->error_code >= 128) {
  	/* kludge, try to find the extension that caused it */
  	buffer[0] = '\0';
  	for (ext = dpy->ext_procs; ext; ext = ext->next) {
***************
*** 1324,1342 ****
  	    if (ext->error_string) 
  		(*ext->error_string)(dpy, event->error_code, &ext->codes,
  				     buffer, BUFSIZ);
! 	    if (buffer[0])
  		break;
  	}    
! 	if (buffer[0])
! 	    sprintf(buffer, "%s.%d", ext->name,
! 		    event->error_code - ext->codes.first_error);
  	else
  	    strcpy(buffer, "Value");
  	XGetErrorDatabaseText(dpy, mtype, buffer, "", mesg, BUFSIZ);
! 	if (*mesg) {
  	    (void) fprintf(fp, mesg, event->resourceid);
! 	    fputs("\n  ", fp);
  	}
      } else if ((event->error_code == BadWindow) ||
  	       (event->error_code == BadPixmap) ||
  	       (event->error_code == BadCursor) ||
--- 1320,1350 ----
  	    if (ext->error_string) 
  		(*ext->error_string)(dpy, event->error_code, &ext->codes,
  				     buffer, BUFSIZ);
! 	    if (buffer[0]) {
! 		bext = ext;
  		break;
+ 	    }
+ 	    if (ext->codes.first_error &&
+ 		ext->codes.first_error < event->error_code &&
+ 		(!bext || ext->codes.first_error > bext->codes.first_error))
+ 		bext = ext;
  	}    
! 	if (bext)
! 	    sprintf(buffer, "%s.%d", bext->name,
! 		    event->error_code - bext->codes.first_error);
  	else
  	    strcpy(buffer, "Value");
  	XGetErrorDatabaseText(dpy, mtype, buffer, "", mesg, BUFSIZ);
! 	if (mesg[0]) {
! 	    fputs("  ", fp);
  	    (void) fprintf(fp, mesg, event->resourceid);
! 	    fputs("\n", fp);
  	}
+ 	/* let extensions try to print the values */
+ 	for (ext = dpy->ext_procs; ext; ext = ext->next) {
+ 	    if (ext->error_values)
+ 		(*ext->error_values)(dpy, event, fp);
+ 	}
      } else if ((event->error_code == BadWindow) ||
  	       (event->error_code == BadPixmap) ||
  	       (event->error_code == BadCursor) ||
***************
*** 1356,1370 ****
  	else
  	    XGetErrorDatabaseText(dpy, mtype, "ResourceID", "ResourceID 0x%x",
  				  mesg, BUFSIZ);
  	(void) fprintf(fp, mesg, event->resourceid);
! 	fputs("\n  ", fp);
      }
      XGetErrorDatabaseText(dpy, mtype, "ErrorSerial", "Error Serial #%d", 
! 	mesg, BUFSIZ);
      (void) fprintf(fp, mesg, event->serial);
-     fputs("\n  ", fp);
      XGetErrorDatabaseText(dpy, mtype, "CurrentSerial", "Current Serial #%d",
! 	mesg, BUFSIZ);
      (void) fprintf(fp, mesg, dpy->request);
      fputs("\n", fp);
      if (event->error_code == BadImplementation) return 0;
--- 1364,1380 ----
  	else
  	    XGetErrorDatabaseText(dpy, mtype, "ResourceID", "ResourceID 0x%x",
  				  mesg, BUFSIZ);
+ 	fputs("  ", fp);
  	(void) fprintf(fp, mesg, event->resourceid);
! 	fputs("\n", fp);
      }
      XGetErrorDatabaseText(dpy, mtype, "ErrorSerial", "Error Serial #%d", 
! 			  mesg, BUFSIZ);
!     fputs("  ", fp);
      (void) fprintf(fp, mesg, event->serial);
      XGetErrorDatabaseText(dpy, mtype, "CurrentSerial", "Current Serial #%d",
! 			  mesg, BUFSIZ);
!     fputs("\n  ", fp);
      (void) fprintf(fp, mesg, dpy->request);
      fputs("\n", fp);
      if (event->error_code == BadImplementation) return 0;
*** /tmp/,RCSt1003020	Wed Nov 11 10:12:58 1992
--- mit/lib/X/XErrorDB	Mon Aug 10 18:55:46 1992
***************
*** 1,3 ****
--- 1,4 ----
+ ! $XConsortium: XErrorDB,v 1.15 92/08/10 18:59:38 mor Exp $
  ! these are used in XGetErrorMessage.
  XlibMessage.XError: X Error of failed request
  XlibMessage.MajorCode: Major opcode of failed request:  %d
***************
*** 218,220 ****
--- 219,360 ----
  ! MIT-SUNDRY-NONSTANDARD extension, definitely not an X Consortium standard
  XRequest.MIT-SUNDRY-NONSTANDARD.0: X_MITSetBugMode
  XRequest.MIT-SUNDRY-NONSTANDARD.1: X_MITGetBugMode
+ ! X3D-PEX extension
+ XRequest.X3D-PEX.1: PEX_GetExtensionInfo
+ XRequest.X3D-PEX.2: PEX_GetEnumeratedTypeInfo
+ XRequest.X3D-PEX.3: PEX_GetImpDepConstants
+ XRequest.X3D-PEX.4: PEX_CreateLookupTable
+ XRequest.X3D-PEX.5: PEX_CopyLookupTable
+ XRequest.X3D-PEX.6: PEX_FreeLookupTable
+ XRequest.X3D-PEX.7: PEX_GetTableInfo
+ XRequest.X3D-PEX.8: PEX_GetPredefinedEntries
+ XRequest.X3D-PEX.9: PEX_GetDefinedIndices
+ XRequest.X3D-PEX.10: PEX_GetTableEntry
+ XRequest.X3D-PEX.11: PEX_GetTableEntries
+ XRequest.X3D-PEX.12: PEX_SetTableEntries
+ XRequest.X3D-PEX.13: PEX_DeleteTableEntries
+ XRequest.X3D-PEX.14: PEX_CreatePipelineContext
+ XRequest.X3D-PEX.15: PEX_CopyPipelineContext
+ XRequest.X3D-PEX.16: PEX_FreePipelineContext
+ XRequest.X3D-PEX.17: PEX_GetPipelineContext
+ XRequest.X3D-PEX.18: PEX_ChangePipelineContext
+ XRequest.X3D-PEX.19: PEX_CreateRenderer
+ XRequest.X3D-PEX.20: PEX_FreeRenderer
+ XRequest.X3D-PEX.21: PEX_ChangeRenderer
+ XRequest.X3D-PEX.22: PEX_GetRendererAttributes
+ XRequest.X3D-PEX.23: PEX_GetRendererDynamics
+ XRequest.X3D-PEX.24: PEX_BeginRendering
+ XRequest.X3D-PEX.25: PEX_EndRendering
+ XRequest.X3D-PEX.26: PEX_BeginStructure
+ XRequest.X3D-PEX.27: PEX_EndStructure
+ XRequest.X3D-PEX.28: PEX_RenderOutputCommands
+ XRequest.X3D-PEX.29: PEX_RenderNetwork
+ XRequest.X3D-PEX.30: PEX_CreateStructure
+ XRequest.X3D-PEX.31: PEX_CopyStructure
+ XRequest.X3D-PEX.32: PEX_DestroyStructures
+ XRequest.X3D-PEX.33: PEX_GetStructureInfo
+ XRequest.X3D-PEX.34: PEX_GetElementInfo
+ XRequest.X3D-PEX.35: PEX_GetStructuresInNetwork
+ XRequest.X3D-PEX.36: PEX_GetAncestors
+ XRequest.X3D-PEX.37: PEX_GetDescendants
+ XRequest.X3D-PEX.38: PEX_FetchElements
+ XRequest.X3D-PEX.39: PEX_SetEditingMode
+ XRequest.X3D-PEX.40: PEX_SetElementPointer
+ XRequest.X3D-PEX.41: PEX_SetElementPointerAtLabel
+ XRequest.X3D-PEX.42: PEX_ElementSearch
+ XRequest.X3D-PEX.43: PEX_StoreElements
+ XRequest.X3D-PEX.44: PEX_DeleteElements
+ XRequest.X3D-PEX.45: PEX_DeleteElementsToLabel
+ XRequest.X3D-PEX.46: PEX_DeleteBetweenLabels
+ XRequest.X3D-PEX.47: PEX_CopyElements
+ XRequest.X3D-PEX.48: PEX_ChangeStructureRefs
+ XRequest.X3D-PEX.49: PEX_CreateNameSet
+ XRequest.X3D-PEX.50: PEX_CopyNameSet
+ XRequest.X3D-PEX.51: PEX_FreeNameSet
+ XRequest.X3D-PEX.52: PEX_GetNameSet
+ XRequest.X3D-PEX.53: PEX_ChangeNameSet
+ XRequest.X3D-PEX.54: PEX_CreateSearchContext
+ XRequest.X3D-PEX.55: PEX_CopySearchContext
+ XRequest.X3D-PEX.56: PEX_FreeSearchContext
+ XRequest.X3D-PEX.57: PEX_GetSearchContext
+ XRequest.X3D-PEX.58: PEX_ChangeSearchContext
+ XRequest.X3D-PEX.59: PEX_SearchNetwork
+ XRequest.X3D-PEX.60: PEX_CreatePhigsWks
+ XRequest.X3D-PEX.61: PEX_FreePhigsWks
+ XRequest.X3D-PEX.62: PEX_GetWksInfo
+ XRequest.X3D-PEX.63: PEX_GetDynamics
+ XRequest.X3D-PEX.64: PEX_GetViewRep
+ XRequest.X3D-PEX.65: PEX_RedrawAllStructures
+ XRequest.X3D-PEX.66: PEX_UpdateWorkstation
+ XRequest.X3D-PEX.67: PEX_RedrawClipRegion
+ XRequest.X3D-PEX.68: PEX_ExecuteDeferredActions
+ XRequest.X3D-PEX.69: PEX_SetViewPriority
+ XRequest.X3D-PEX.70: PEX_SetDisplayUpdateMode
+ XRequest.X3D-PEX.71: PEX_MapDCtoWC
+ XRequest.X3D-PEX.72: PEX_MapWCtoDC
+ XRequest.X3D-PEX.73: PEX_SetViewRep
+ XRequest.X3D-PEX.74: PEX_SetWksWindow
+ XRequest.X3D-PEX.75: PEX_SetWksViewport
+ XRequest.X3D-PEX.76: PEX_SetHlhsrMode
+ XRequest.X3D-PEX.77: PEX_SetWksBufferMode
+ XRequest.X3D-PEX.78: PEX_PostStructure
+ XRequest.X3D-PEX.79: PEX_UnpostStructure
+ XRequest.X3D-PEX.80: PEX_UnpostAllStructures
+ XRequest.X3D-PEX.81: PEX_GetWksPostings
+ XRequest.X3D-PEX.82: PEX_GetPickDevice
+ XRequest.X3D-PEX.83: PEX_ChangePickDevice
+ XRequest.X3D-PEX.84: PEX_CreatePickMeasure
+ XRequest.X3D-PEX.85: PEX_FreePickMeasure
+ XRequest.X3D-PEX.86: PEX_GetPickMeasure
+ XRequest.X3D-PEX.87: PEX_UpdatePickMeasure
+ XRequest.X3D-PEX.88: PEX_OpenFont
+ XRequest.X3D-PEX.89: PEX_CloseFont
+ XRequest.X3D-PEX.90: PEX_QueryFont
+ XRequest.X3D-PEX.91: PEX_ListFonts
+ XRequest.X3D-PEX.92: PEX_ListFontsWithInfo
+ XRequest.X3D-PEX.93: PEX_QueryTextExtents
+ XRequest.X3D-PEX.94: PEX_MatchRenderingTargets
+ XRequest.X3D-PEX.95: PEX_Escape
+ XRequest.X3D-PEX.96: PEX_EscapeWithReply
+ XRequest.X3D-PEX.97: PEX_RenderElements
+ XRequest.X3D-PEX.98: PEX_AccumulateState
+ XRequest.X3D-PEX.99: PEX_BeginPickOne
+ XRequest.X3D-PEX.100: PEX_EndPickOne
+ XRequest.X3D-PEX.101: PEX_PickOne
+ XRequest.X3D-PEX.102: PEX_BeginPickAll
+ XRequest.X3D-PEX.103: PEX_EndPickAll
+ XRequest.X3D-PEX.104: PEX_PickAll
+ XProtoError.X3D-PEX.0: PEXColorTypeError
+ XlibMessage.X3D-PEX.0: Color type in failed request 0x%lx
+ XProtoError.X3D-PEX.1: PEXRendererStateError
+ XlibMessage.X3D-PEX.1: Renderer id in failed request 0x%lx
+ XProtoError.X3D-PEX.2: PEXFloatingPointFormatError
+ XlibMessage.X3D-PEX.2: Format in failed request 0x%lx
+ XProtoError.X3D-PEX.3: PEXLabelError
+ XlibMessage.X3D-PEX.3: Label in failed request 0x%lx
+ XProtoError.X3D-PEX.4: PEXLookupTableError
+ XlibMessage.X3D-PEX.4: Table id in failed request 0x%lx
+ XProtoError.X3D-PEX.5: PEXNameSetError
+ XlibMessage.X3D-PEX.5: Nameset in failed request 0x%lx
+ XProtoError.X3D-PEX.6: PEXPathError
+ XlibMessage.X3D-PEX.6: Path id in failed request 0x%lx
+ XProtoError.X3D-PEX.7: PEXFontError
+ XlibMessage.X3D-PEX.7: Font id in failed request 0x%lx
+ XProtoError.X3D-PEX.8: PEXPhigsWksError
+ XlibMessage.X3D-PEX.8: Workstation id in failed request 0x%lx
+ XProtoError.X3D-PEX.9: PEXPickMeasureError
+ XlibMessage.X3D-PEX.9: Device id in failed request 0x%lx
+ XProtoError.X3D-PEX.10: PEXPipelineContextError
+ XlibMessage.X3D-PEX.10: Context id in failed request 0x%lx
+ XProtoError.X3D-PEX.11: PEXRendererError
+ XlibMessage.X3D-PEX.11: Renderer id in failed request 0x%lx
+ XProtoError.X3D-PEX.12: PEXSearchContextError
+ XlibMessage.X3D-PEX.12: Context id in failed request 0x%lx
+ XProtoError.X3D-PEX.13: PEXStructureError
+ XlibMessage.X3D-PEX.13: Structure id in failed request 0x%lx
+ XProtoError.X3D-PEX.14: PEXOutputCommandError
+ XlibMessage.X3D-PEX.14: Resource id in failed request 0x%lx
+ ! XTEST extension
+ XRequest.XTEST.0: X_XTestGetVersion
+ XRequest.XTEST.1: X_XTestCompareCursor
+ XRequest.XTEST.2: X_XTestFakeInput
