Subject: Re: bug#69762: X11 versions of Emacs 29 on sparc fail at startup

From: Po Lu <[email-masked]>
Date: Fri, 15 Mar 2024 14:42:02 +0800

Ali Bahrami <[email-masked]> writes:

> I'm running it as 'src/emacs', out of the workspace
> that I built with the patch applied, as well as configured
> with --without-xinput2. Did I miss a step, or should I be
> running it differently?

Nevermind, the code to print this information wasn't installed in the
Emacs 29 branch, being written awfully close to the time of the release.

Please apply this patch and respond with the error message the patched
Emacs generates:

diff --git a/src/xterm.c b/src/xterm.c
index acb008475c7..9f6d5196720 100644
--- a/src/xterm.c
+++ b/src/xterm.c
@@ -26300,8 +26300,10 @@ x_error_handler (Display *display, XErrorEvent *event)
 static void NO_INLINE
 x_error_quitter (Display *display, XErrorEvent *event)
 {
-  char buf[256], buf1[400 + INT_STRLEN_BOUND (int)
-		      + INT_STRLEN_BOUND (unsigned long)];
+  char buf[256], buf1[800 + INT_STRLEN_BOUND (int)
+		      + INT_STRLEN_BOUND (unsigned long)
+		      + INT_STRLEN_BOUND (XID)
+		      + INT_STRLEN_BOUND (int)];
 
   /* Ignore BadName errors.  They can happen because of fonts
      or colors that are not defined.  */
@@ -26314,8 +26316,12 @@ x_error_quitter (Display *display, XErrorEvent *event)
 
   XGetErrorText (display, event->error_code, buf, sizeof (buf));
   sprintf (buf1, "X protocol error: %s on protocol request %d\n"
-	   "Serial no: %lu\n", buf, event->request_code,
-	   event->serial);
+	   "Serial no: %lu\n"
+	   "Failing resource ID (if any): 0x%lx\n"
+	   "Minor code: %d\n",
+	   "This is a bug!  Please report this to [email-masked]!\n"
+	   buf, event->request_code, event->serial, event->resourceid,
+	   event->minor_code);
   x_connection_closed (display, buf1, false);
 }