Subject: bug#8562: Emacs 23.1 and later don't work in windows 98

From: Jason Rumney <[email-masked]>
Date: Mon, 23 May 2011 21:43:40 +0800

oslsachem <[email-masked]> writes:

> Is it necessary that the binaries are built on the same OS that they
> are going to be debugged in?

No, the main thing is that you have the source that you know matches the
binary you are running.

>From http://www11.speedyshare.com/files/28593350/download/Emacs-23.3GDBWXPW98.txt

--8<---------------cut here---------------start------------->8---
Program received signal SIGSEGV, Segmentation fault.
0x01051020 in display_mode_line (w=0x3495c00, face_id=MODE_LINE_FACE_ID, 
    format=46642574) at xdisp.c:17289
17289	      last->right_box_line_p = 1;
(gdb) warning: clipped frame 03495000 (EMACS@OEMCOMPUTER) got WM_PAINT - ignored

list
17284	  extend_face_to_end_of_line (&it);
17285	  if (face->box != FACE_NO_BOX)
17286	    {
17287	      struct glyph *last = (it.glyph_row->glyphs[TEXT_AREA]
17288				    + it.glyph_row->used[TEXT_AREA] - 1);
17289	      last->right_box_line_p = 1;
17290	    }
17291	
17292	  return it.glyph_row->height;
17293	}
(gdb) where
#0  0x01051020 in display_mode_line (w=0x3495c00, face_id=MODE_LINE_FACE_ID, 
    format=46642574) at xdisp.c:17289
--8<---------------cut here---------------end--------------->8---

It appears that the pointer last is invalid here. What are the values of
it.glyph_row->glyphs[TEXT_AREA] and it.glyph_row->used[TEXT_AREA]?