Subject: Re: bug#9006: 24.0.50; Abort in unshow_buffer/kill-buffer

From: martin rudalics <[email-masked]>
Date: Thu, 07 Jul 2011 17:47:44 +0200

> This time I wasn't editing but just moving around the buffer rapidly,
 > holding down keys like C-n, C-p, C-f, C-v etc. until Emacs didn't
 > respond anymore, then C-g, upon which Emacs aborted.  The session was
 > not quite as old as the previous one, 9-10 hours.  I had tried
 > unsuccessfully to induce the crash several times earlier in the session.

I'm quite lost here.  From the code it seems obvious that tabbar uses
`vertical-motion' which makes a temporary buffer appear in the selected
window without displaying it in order to calculate the tabs to display.
Apparently, the problem is that `vertical-motion' does

       XSETBUFFER (w->buffer, current_buffer);

but does not

       set_marker_both (w->pointm, buffer, BEG, BEG_BYTE);

as the comment I posted earlier suggests.  This makes the subsequent
unshow_buffer abort.  In any case, someone who knows `vertical-motion'
better than me will have to look into this.

martin