JD Smith <[EMAIL PROTECTED]> writes:

> I'm still getting SEGFAULTS in the most recent CVS build, relating to
> increment_row_positions.  I had previously reported this was fixed in
> 22.0.50, but had not tested adequately.  It is an intermittent
> SEGFAULT, usually triggered by a key comand that causes window
> redisplay.  This is:
>
> GNU Emacs 22.0.50.3 (i686-pc-linux-gnu, X toolkit, Xaw3d scroll bars)
> of 2005-07-14 on turtle.as.arizona.edu
>
> (gdb) run
> Starting program: /usr/local/bin/emacs -geometry 80x40+0+0
> Detaching after fork from child process 24951.
>
> Program received signal SIGSEGV, Segmentation fault.
> 0x08050c4f in increment_row_positions (row=0x8b865c8, delta=-1, delta_bytes=4)
>     at dispnew.c:1190
> 1190          if (BUFFERP (row->glyphs[area][i].object)

BUFFERP(...) also examines the size of the glyph object, i.e. it
accesses something like this:

        XVECTOR(row->glyphs[area][i].object)->size

So it seems that the glyph object (after stripping off bits and
pieces) points to void memory -- which should not happen.

The question is what object should have been there (if any)...
What was displayed in the window where this happened?

Next time this happens, pls. print the information from the following
gdb commands:

  p *row
  p i
  p area
  p row->glyphs[area][i]
  p row->glyphs[area][i+1]  
  p row->glyphs[area][i-1]  (if i > 0)
  prow

  up
  p start

  up
  p first_unchanged_at_end_vpos
  p dvpos
  p dy
  p *w
  pwin


-- 
Kim F. Storm <[EMAIL PROTECTED]> http://www.cua.dk



_______________________________________________
Emacs-devel mailing list
Emacs-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-devel

Reply via email to