[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#35273: "Marker does not point anywhere" when reading next article
From: |
Noam Postavsky |
Subject: |
bug#35273: "Marker does not point anywhere" when reading next article |
Date: |
Tue, 16 Apr 2019 09:56:36 -0400 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/26.2 (gnu/linux) |
Leah Neukirchen <leah@vuxu.org> writes:
> Noam Postavsky <npostavs@gmail.com> writes:
>
>> 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.)
Oh, hmm. Maybe the backtrace doesn't have `signal' in that
context, so nothing is collected.
>> 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
> (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));
Oh right, OVERLAY_POSITION calls marker_position. I think the patch
below should paper over the problem, but I'm not sure if it's the right
thing.
--- i/src/buffer.c
+++ w/src/buffer.c
@@ -3044,8 +3044,13 @@ overlays_in (EMACS_INT beg, EMACS_INT end, bool extend,
bool
mouse_face_overlay_overlaps (Lisp_Object overlay)
{
- ptrdiff_t start = OVERLAY_POSITION (OVERLAY_START (overlay));
- ptrdiff_t end = OVERLAY_POSITION (OVERLAY_END (overlay));
+ Lisp_Object start_pos = Fmarker_position (OVERLAY_START (overlay));
+ Lisp_Object end_pos = Fmarker_position (OVERLAY_END (overlay));
+ if (!(INTEGERP (start_pos) && INTEGERP (end_pos)))
+ return false;
+ intmax_t start, end;
+ integer_to_intmax (start_pos, &start);
+ integer_to_intmax (end_pos, &end);
ptrdiff_t n, i, size;
Lisp_Object *v, tem;
Lisp_Object vbuf[10];
- bug#35273: "Marker does not point anywhere" when reading next article, Leah Neukirchen, 2019/04/14
- bug#35273: "Marker does not point anywhere" when reading next article, Basil L. Contovounesios, 2019/04/14
- bug#35273: "Marker does not point anywhere" when reading next article, Leah Neukirchen, 2019/04/14
- bug#35273: "Marker does not point anywhere" when reading next article, Noam Postavsky, 2019/04/16
- bug#35273: "Marker does not point anywhere" when reading next article, Leah Neukirchen, 2019/04/16
- bug#35273: "Marker does not point anywhere" when reading next article, Noam Postavsky, 2019/04/16
- bug#35273: "Marker does not point anywhere" when reading next article, Leah Neukirchen, 2019/04/16
- bug#35273: "Marker does not point anywhere" when reading next article,
Noam Postavsky <=
- bug#35273: "Marker does not point anywhere" when reading next article, Leah Neukirchen, 2019/04/16
- bug#35273: "Marker does not point anywhere" when reading next article, Eli Zaretskii, 2019/04/16
- bug#35273: "Marker does not point anywhere" when reading next article, Noam Postavsky, 2019/04/20
- bug#35273: "Marker does not point anywhere" when reading next article, Eli Zaretskii, 2019/04/20
- bug#35273: "Marker does not point anywhere" when reading next article, Eli Zaretskii, 2019/04/20
- bug#35273: "Marker does not point anywhere" when reading next article, Noam Postavsky, 2019/04/27
- bug#35273: "Marker does not point anywhere" when reading next article, Eli Zaretskii, 2019/04/27
- bug#35273: "Marker does not point anywhere" when reading next article, Noam Postavsky, 2019/04/27
- bug#35273: "Marker does not point anywhere" when reading next article, Eli Zaretskii, 2019/04/27
- bug#35273: "Marker does not point anywhere" when reading next article, Noam Postavsky, 2019/04/28