bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#24804: 25.1; posn-at-point erroneously signals an error


From: martin rudalics
Subject: bug#24804: 25.1; posn-at-point erroneously signals an error
Date: Thu, 27 Oct 2016 19:35:55 +0200

> The documentation of the function posn-at-point states
>
> "Return nil if position is not visible in window.",
>
> but it may also signal an error in this case.  This happens, if
> Fpos_visible_in_window_p returns a list of (X Y RTOP RBOT ROWH VPOS)
> and at least Y is negative (which indicates, that pos is not visible
> IIUC).  The error is then signaled by Fposn_at_x_y, which only accpets
> non-negative numbers (neglecting the exceptional case of -1 for X).
>
> I think this function should include a similar test for y, as is already
> in place for x, returning nil if it is negative (see below).

Thanks.  But according to Eli the problem is in Fpos_visible_in_window_p
which should never return a negative y in the first place.

> Reproducing this state may be a little bit tricky, anyway evaluate the
> following lines, starting with `emacs -Q'.
>
> (defvar img "foo.png");; The image should be taller then the window
>                        ;; it's displayed in.
> (setq debug-on-error t)
> (find-file img)
> (redisplay t)         ;; If in batch mode.
> (image-scroll-up 999)
> ;; The image should be scrolled to the bottom now, while point equals 1.
> (posn-at-point (point-max) (selected-window))

That's a valuable information.  I indeed can reproduce the problem with
this scenario (but only on another machine where I can display images
and the Emacs there must be repaired).  Could you try answering the
question Eli asked for bug#23809 namely:

  . Can you show the entire value returned by Fpos_visible_in_window_p
    when its call from Fposn_at_point returns, when this problem is
    reproduced?

Thanks again, martin





reply via email to

[Prev in Thread] Current Thread [Next in Thread]