GNU bug report logs -
#23899
24.5; mouse-on-link-p breaks for positions
Previous Next
Reported by: sbaugh <at> catern.com
Date: Tue, 5 Jul 2016 17:45:02 UTC
Severity: normal
Found in version 24.5
Done: Eli Zaretskii <eliz <at> gnu.org>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
Your message dated Thu, 07 Jul 2016 19:16:20 +0300
with message-id <8337nll8yz.fsf <at> gnu.org>
and subject line Re: bug#23899: 24.5; mouse-on-link-p breaks for positions
has caused the debbugs.gnu.org bug report #23899,
regarding 24.5; mouse-on-link-p breaks for positions
to be marked as done.
(If you believe you have received this mail in error, please contact
help-debbugs <at> gnu.org.)
--
23899: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=23899
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
The documentation for mouse-on-link-p says:
POS must be a buffer position in the current buffer or a mouse
event location in the selected window (see `event-start').
However, doing M-: (mouse-on-link-p (point)) fails with a type
error. And, in general, passing a buffer position to mouse-on-link-p
fails with a type error.
This appears to be due to this section of mouse-on-link-p:
(let ((area (posn-area pos)))
(when area
(key-binding (vector area 'follow-link) nil t pos)))
I would recommend wrapping this in a (and (consp pos) ...) to avoid
running posn-area on buffer positions. The rest of the function works
fine, this part was added later.
[Message part 3 (message/rfc822, inline)]
> From: sbaugh <at> catern.com
> Date: Tue, 05 Jul 2016 13:32:49 -0400
>
> The documentation for mouse-on-link-p says:
> POS must be a buffer position in the current buffer or a mouse
> event location in the selected window (see `event-start').
> However, doing M-: (mouse-on-link-p (point)) fails with a type
> error. And, in general, passing a buffer position to mouse-on-link-p
> fails with a type error.
>
> This appears to be due to this section of mouse-on-link-p:
> (let ((area (posn-area pos)))
> (when area
> (key-binding (vector area 'follow-link) nil t pos)))
>
> I would recommend wrapping this in a (and (consp pos) ...) to avoid
> running posn-area on buffer positions. The rest of the function works
> fine, this part was added later.
I don't think any code changes are required. This is just a
documentation problem: what the doc string fails to tell is that the
function needs POS as a mouse-click position, which is a list. If you
want to invoke the function at point, you can get the argument by
calling posn-at-point.
I installed a change to that effect on the emacs-25 branch, and I'm
marking this bug "done".
Thanks.
This bug report was last modified 9 years and 6 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.