> I applied the patch and rebuilt Emacs, then started with my > initializations under gdb. Emacs came up fine, then I type C-h C-a and > it aborted in unshow_buffer; the backtrace is almost identical to the > one I posted previously. Why am I not surprised? Though, it doesn't abort here. > Then I started Emacs again, started Gnus, as > with your first suggested patch with set_marker_both (w->buffer, BEG, > BEGV) I suppose you mean set_marker_both (w->pointm, w->buffer, BEG, BEGV) here. > the display was unstable (unselected window at first blank, then > blank fringe), then tried `h' and it worked a few times but the response > was slow, and then (after `h' not C-g) Emacs aborted in unshow_buffer; > backtrace below. Just out of curiosity (since I don't understand the > code), I rebuilt again with the following call (old_buffer instead of > w->buffer): > > set_marker_both > (w->pointm, old_buffer, BUF_PT (current_buffer), BUF_PT_BYTE (current_buffer)); > > This did not cause an abort with C-h C-a nor with h in Gnus, but it > showed the same problem of point in the non-selected window jumping to > point-min, despite not passing BEG and BEGV. The strange thing about this is that when old_buffer is not the current buffer, this will set the marker in the wrong buffer which should cause an abort. But as I stated earlier I'm still completely lost here :-( Anyway, I attached another patch. Things are getting more and more complicated because I have zero experience working with markers in C. martin