> LGTM. Can you commit that yourself to the branch? I don't have a savannah account for emacs, but I have just registered and will chase up approvals. timers are cleaned up by cancel_atimer(), then they get put on a free list (`free_atimers` on line 132 in the snippet). It appears that we rely on the OS to cleanup at emacs shutdown. On Wed, Nov 6, 2024 at 9:36 PM Gerd Möllmann wrote: > Jeff Walsh writes: > > > #ifdef WINDOWSNT > > #define raise(s) w32_raise(s) > > @@ -132,7 +133,13 @@ start_atimer (enum atimer_type type, struct > timespec timestamp, > > free_atimers = t->next; > > } > > else > > - t = xmalloc (sizeof *t); > > + { > > +#ifdef HAVE_MPS > > + t = igc_xzalloc_ambig (sizeof *t); > > +#else > > + t = xmalloc (sizeof *t); > > +#endif > > + } > > > > /* Fill the atimer structure. */ > > memset (t, 0, sizeof *t); > > On second thought, and I don't know if it's relevant, do we need to > igc_xfree that? >