GNU bug report logs - #21380
25.0.50; GTK-induced segfault when scheduling timer from window-configuration-change-hook

Previous Next

Package: emacs;

Reported by: Pip Cet <pipcet <at> gmail.com>

Date: Sun, 30 Aug 2015 12:52:02 UTC

Severity: normal

Found in version 25.0.50

Fixed in version 29.1

Done: Lars Ingebrigtsen <larsi <at> gnus.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Pip Cet <pipcet <at> gmail.com>
Cc: 21380 <at> debbugs.gnu.org, Eli Zaretskii <eliz <at> gnu.org>, Stefan Monnier <monnier <at> iro.umontreal.ca>
Subject: bug#21380: 25.0.50; GTK-induced segfault when scheduling timer from window-configuration-change-hook
Date: Mon, 07 Sep 2020 19:07:18 +0200
Pip Cet <pipcet <at> gmail.com> writes:

>         * keyboard.c (timer_check): Call `block_input' and turn off
> 	atimers around the creation of the temporary timer list copy.
>
> 	* fns.c (concat): Don't assume argument size remains unchanged
> 	after call to `Fmake_list'.  Return incorrect results (but don't
> 	segfault) in that case.

Skimming this thread, it seemed like the first part fixes a segfault
(and the second part was probably not needed), but not even the first
part was applied?  (I just had a peek at timer_check to check.)

The discussion instead turned to the idea of avoiding the

  timers = Fcopy_sequence (Vtimer_list);

completely, and just working directly off of Vtimer_list.  Which seems
like a good idea, but there may be unknown unknowns in that scenario?

In any case, the timer_check change seems safe, and fixes a (somewhat
obscure) segfault, so does anybody object to putting that in?  (We can
also add a FIXME to the code here mentioning the possibility of not
copying the list.)

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




This bug report was last modified 3 years and 75 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.