That's fine with me.
By the way, I've been quiet on the lists for the last few weeks
because I've been extremely busy with a deadline at my day job.
We're about to ship the code I've been working on, so I should be
able to catch up on what's been going on with XEmacs soon.
--On Thursday, November 30, 2000 9:16 AM +0000 Andy Piper
Did this ever get applied? Is it relevant?
At 04:11 AM 4/30/00 +0000, Mike Alexander wrote:
> The problem described in
> is still occurring for me sometimes. This causes random crashes
> if you have a value set for scroll-step. One way that I've made
> it happen, although not every time, is to run XEmacs -vanilla,
> immediately use M-: (i.e., don't type into the *scratch* buffer)
> to set toolbar-visible-p and gutter-buffers-tab-visible-p to nil
> and scroll-step to 15, then do a File->Save As. This doesn't
> make much sense to do since it tries to save the default
> *scratch* buffer, but it sometimes causes the crash.
> The patch below avoids this problem. It occurs if the height of
> a window is so small that not even one line can be formatted in
> it. In this case the line cache will always be empty and
> point-in-line-start-cache will return -1 which was causing
> vmotion-1 to assert. I looked at the various callers of
> vmotion-1 and it appears that it is reasonable to just have it
> return the input point unchanged in this case, so that's what I
> did. If this is not the right thing to do, I'd be happy to hear
> alternative suggestions.
> 2000-04-29 Mike Alexander <mta(a)arbortext.com>
> * indent.c (vmotion_1): If point_in_line_start_cache
> fails simply return the input position instead of
> asserting out.
> Index: src/indent.c
> === RCS file: /usr/CVSroot/XEmacs/xemacs/src/indent.c,v
> retrieving revision 184.108.40.206
> diff -u -r220.127.116.11 indent.c
> --- indent.c 2000/02/07 07:59:19 18.104.22.168
> +++ indent.c 2000/04/29 06:58:00
> ＠＠ -624,8 +624,15 ＠＠
> /* #### This assertion must be true before the if statements
> are hit but may possibly be wrong after the call to
> point_in_line_start_cache if orig is outside of the
> visible - region of the buffer. Handle this. */
> - assert (elt >= 0);
> + region of the buffer. Handle this.
> + This occurs sometimes if scroll-step is non-zero and the
> window + is very small. In this case it's not possible to
> lay out any lines + in the window and
> point_in_line_start_cache returns -1 because + the line
> cache is empty. In this case we will just return the +
> original point and hope for the best. */
> + if (elt < 0)
> + return orig;
> /* Moving downward. */
> if (vtarget > 0)
Dr Andy Piper
Principal Consultant, BEA Systems Ltd