[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#56692: 29.0.50; scroll-bar in the minibuffer window disappears
From: |
Eli Zaretskii |
Subject: |
bug#56692: 29.0.50; scroll-bar in the minibuffer window disappears |
Date: |
Sat, 23 Jul 2022 09:50:44 +0300 |
> From: Po Lu <luangruo@yahoo.com>
> Cc: visuweshm@gmail.com, 56692@debbugs.gnu.org
> Date: Sat, 23 Jul 2022 09:12:48 +0800
>
> Eli Zaretskii <eliz@gnu.org> writes:
>
> > move_it_to was signaling an error in that case, that's why the scroll
> > bar didn't appear: the set_vertical_scroll_bar_hook method wasn't
> > called.
> >
> > I fixed it now properly (I hope). I guess it's one of those "TIL"
> > days...
>
> Thanks. TIL it is actually possible for move_it_to to signal.
It isn't. But move_it_to calls the low-level display code, which
examines text properties at buffer positions it's supposed to
traverse, and text-property APIs _can_ signal errors because they must
validate the positions they are asked to examine, see
validate_interval_range.
The lesson is that calling these functions when the window's buffer is
not the current_buffer can cause all kinds of trouble due to our
reliance on ZV and other similar values. My personal TIL part is that
there could be code in redisplay_window, apart of its very beginning,
where that condition is not necessarily true.