From: Leah Neukirchen <leah@vuxu.org>
To: Noam Postavsky <npostavs@gmail.com>
Cc: "Basil L. Contovounesios" <contovob@tcd.ie>, 35273@debbugs.gnu.org
Subject: bug#35273: "Marker does not point anywhere" when reading next article
Date: Tue, 16 Apr 2019 15:21:12 +0200 [thread overview]
Message-ID: <87sguim6gn.fsf@vuxu.org> (raw)
In-Reply-To: <87wojuxfdl.fsf@gmail.com> (Noam Postavsky's message of "Tue, 16 Apr 2019 09:13:10 -0400")
Noam Postavsky <npostavs@gmail.com> writes:
> Leah Neukirchen <leah@vuxu.org> writes:
>
>>> If you can reproduce it reliably, setting (setq debug-on-signal t) just
>>> before might help get a backtrace.
>>>
>>> If that also doesn't work you could record the backtrace from a
>>> signal-hook-function:
>>>
>>> (defvar bug-35273-last-backtrace nil)
>>> (defun bug-35273-record-backtrace (err data)[...]
>
>>> (setq signal-hook-function #'bug-35273-record-backtrace)
>>
>> These do not work for some reason...
>
> debug-on-signal doesn't work because the debugger is suppressed during
> redisplay (to avoid recursion). I think the signal-hook-function might
> have worked (though I forgot to tell you to check the value of
> bug-35273-last-backtrace afterwards) but it would only have a single
> frame of "redisplay" so it would be useless.
(It was nil.)
>>> Or if you can run under gdb, just set a breakpoint in the C code where
>>> that error is raised.
>>
>> On 27.0.50 (05d53d888):
>>
>> Breakpoint 1, marker_position (marker=0x555557d6feb5) at marker.c:680
>> 680 error ("Marker does not point anywhere");
>> (gdb) bt
>> #0 marker_position (marker=0x555557d6feb5) at marker.c:680
>> #1 0x000055555567935e in mouse_face_overlay_overlaps (overlay=0x555557d6ff15)
>> at lisp.h:2624
>> #2 0x00005555555d395f in note_mouse_highlight (f=f@entry=0x555556001d70,
>> x=<optimized out>, y=<optimized out>) at xdisp.c:31836
>
> The xdisp.c:31836 at revision 05d53d888 has
>
> help_echo_pos = charpos;
>
> And neither note_mouse_highlight nor mouse_face_overlay_overlaps call
> marker_position, so I'm confused how we got there. note_mouse_highlight
> does call Fmarker_position, but that one doesn't signal an error.
>
> Maybe the debug info is messed up by optimization. Could you try
> recompiling with CFLAGS='-O0 -g3'?
(gdb) bt
#0 marker_position (marker=XIL(0x5555578a47c5)) at marker.c:680
#1 0x00005555556fc2dd in mouse_face_overlay_overlaps (
overlay=XIL(0x5555578a4825)) at buffer.c:3047
#2 0x0000555555606f5f in note_mouse_highlight (f=0x55555610dbf0, x=100, y=9)
at xdisp.c:31631
#3 0x0000555555691622 in XTframe_up_to_date (f=0x55555610dbf0) at xterm.c:1280
#4 0x00005555555d0714 in redisplay_internal () at xdisp.c:14523
#5 0x00005555555d0e38 in redisplay_preserve_echo_area (from_where=5)
at xdisp.c:14759
#6 0x00005555556d0c56 in read_char (commandflag=1, map=XIL(0x555557e1d043),
prev_event=XIL(0), used_mouse_menu=0x7fffffffdeb5, end_time=0x0)
at keyboard.c:2474
#7 0x00005555556de5dd in read_key_sequence (keybuf=0x7fffffffe0c0,
prompt=XIL(0), dont_downcase_last=false, can_return_switch_frame=true,
fix_current_buffer=true, prevent_redisplay=false) at keyboard.c:9111
#8 0x00005555556cddd9 in command_loop_1 () at keyboard.c:1350
#9 0x0000555555780598 in internal_condition_case (
bfun=0x5555556cd991 <command_loop_1>, handlers=XIL(0x5010),
hfun=0x5555556cd146 <cmd_error>) at eval.c:1352
#10 0x00005555556cd679 in command_loop_2 (ignore=XIL(0)) at keyboard.c:1091
#11 0x000055555577fe1a in internal_catch (tag=XIL(0xc5d0),
func=0x5555556cd64c <command_loop_2>, arg=XIL(0)) at eval.c:1115
#12 0x00005555556cd617 in command_loop () at keyboard.c:1070
#13 0x00005555556ccd15 in recursive_edit_1 () at keyboard.c:714
#14 0x00005555556cce99 in Frecursive_edit () at keyboard.c:786
#15 0x00005555556cacbc in main (argc=1, argv=0x7fffffffe538) at emacs.c:1963
Lisp Backtrace:
"redisplay_internal (C function)" (0x0)
(gdb) up
#1 0x00005555556fc2dd in mouse_face_overlay_overlaps (
overlay=XIL(0x5555578a4825)) at buffer.c:3047
3047 ptrdiff_t start = OVERLAY_POSITION (OVERLAY_START (overlay));
(gdb) l
3042 `mouse-face' property overlapping OVERLAY. */
3043
3044 bool
3045 mouse_face_overlay_overlaps (Lisp_Object overlay)
3046 {
3047 ptrdiff_t start = OVERLAY_POSITION (OVERLAY_START (overlay));
3048 ptrdiff_t end = OVERLAY_POSITION (OVERLAY_END (overlay));
3049 ptrdiff_t n, i, size;
3050 Lisp_Object *v, tem;
3051 Lisp_Object vbuf[10];
(gdb) up
#2 0x0000555555606f5f in note_mouse_highlight (f=0x55555610dbf0, x=100, y=9)
at xdisp.c:31631
31631 && mouse_face_overlay_overlaps (hlinfo->mouse_face_overlay)))
(gdb) l
31626 if we enter the overlapping overlay, and then highlight
31627 only that. Skip the check when mouse-face highlighting
31628 is currently hidden to avoid Bug#30519. */
31629 || (!hlinfo->mouse_face_hidden
31630 && OVERLAYP (hlinfo->mouse_face_overlay)
31631 && mouse_face_overlay_overlaps (hlinfo->mouse_face_overlay)))
31632 {
31633 /* Find the highest priority overlay with a mouse-face. */
31634 Lisp_Object overlay = Qnil;
31635 for (i = noverlays - 1; i >= 0 && NILP (overlay); --i)
--
Leah Neukirchen <leah@vuxu.org> http://leah.zone
next prev parent reply other threads:[~2019-04-16 13:21 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-04-14 13:42 bug#35273: "Marker does not point anywhere" when reading next article Leah Neukirchen
2019-04-14 16:31 ` Basil L. Contovounesios
2019-04-14 21:19 ` Leah Neukirchen
2019-04-16 12:38 ` Noam Postavsky
2019-04-16 12:50 ` Leah Neukirchen
2019-04-16 13:13 ` Noam Postavsky
2019-04-16 13:21 ` Leah Neukirchen [this message]
2019-04-16 13:56 ` Noam Postavsky
2019-04-16 14:04 ` Leah Neukirchen
2019-04-16 15:02 ` Eli Zaretskii
2019-04-20 12:05 ` Noam Postavsky
2019-04-20 13:44 ` Eli Zaretskii
2019-04-20 16:20 ` Eli Zaretskii
2019-04-27 16:17 ` Noam Postavsky
2019-04-27 16:49 ` Eli Zaretskii
2019-04-27 19:28 ` Noam Postavsky
2019-04-27 19:35 ` Eli Zaretskii
2019-04-28 12:45 ` Noam Postavsky
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87sguim6gn.fsf@vuxu.org \
--to=leah@vuxu.org \
--cc=35273@debbugs.gnu.org \
--cc=contovob@tcd.ie \
--cc=npostavs@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.