all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: martin rudalics <rudalics@gmx.at>
To: Eli Zaretskii <eliz@gnu.org>
Cc: m.sujith@gmail.com, 30182@debbugs.gnu.org
Subject: bug#30182: Update
Date: Wed, 31 Jan 2018 10:31:38 +0100	[thread overview]
Message-ID: <5A718CFA.2080408@gmx.at> (raw)
In-Reply-To: <83po5rh3pu.fsf@gnu.org>

[-- Attachment #1: Type: text/plain, Size: 255 bytes --]

 > How about running the code with a watchpoint on Vtimer_alist?  Could
 > that help?

That hardly sounds like an amusing experience with all those timers
around.  Sujith, could you instead try the attached patch and tell us
what happens.

Thanks, martin

[-- Attachment #2: timer-check.diff --]
[-- Type: text/plain, Size: 2208 bytes --]

diff --git a/lisp/bindings.el b/lisp/bindings.el
index 6082344..40e5ada 100644
--- a/lisp/bindings.el
+++ b/lisp/bindings.el
@@ -136,7 +136,7 @@ mode-line-default-help-echo
           ;; at the bottom of its frame or the minibuffer window of
           ;; this frame can be resized.  This matches a corresponding
           ;; check in `mouse-drag-mode-line'.
-          (or (not (window-at-side-p window 'bottom))
+          (or (window-in-direction 'below window)
               (let ((mini-window (minibuffer-window frame)))
                 (and (eq frame (window-frame mini-window))
                      (or (minibuffer-window-active-p mini-window)
diff --git a/lisp/emacs-lisp/timer.el b/lisp/emacs-lisp/timer.el
index b1e12b1..3d280a9 100644
--- a/lisp/emacs-lisp/timer.el
+++ b/lisp/emacs-lisp/timer.el
@@ -171,6 +171,11 @@ timer--activate
 	   (timer--function timer))
       (let ((timers (if idle timer-idle-list timer-list))
 	    last)
+
+        (when (and (not idle) timer-check-in-progress)
+          (error "Attempt to add %s to %s while checking timers"
+                 timer timers))
+
 	;; Skip all timers to trigger before the new one.
 	(while (and timers (timer--time-less-p (car timers) timer))
 	  (setq last timers
diff --git a/src/keyboard.c b/src/keyboard.c
index 75fbe45..4324991 100644
--- a/src/keyboard.c
+++ b/src/keyboard.c
@@ -4378,7 +4378,9 @@ struct timespec
      already ripe when added.  */
 
   /* Always consider the ordinary timers.  */
+  Vtimer_check_in_progress = Qt;
   timers = Fcopy_sequence (Vtimer_list);
+  Vtimer_check_in_progress = Qnil;
   /* Consider the idle timers only if Emacs is idle.  */
   if (timespec_valid_p (timer_idleness_start_time))
     idle_timers = Fcopy_sequence (Vtimer_idle_list);
@@ -11880,6 +11882,11 @@ shutdown when Emacs receives a fatal signal (e.g., a crash).
                Vwhile_no_input_ignore_events,
                doc: /* Ignored events from while-no-input.  */);
   Vwhile_no_input_ignore_events = Qnil;
+
+  DEFVAR_LISP ("timer-check-in-progress",
+               Vtimer_check_in_progress,
+               doc: /* Non-nil means a timer check is performed.  */);
+  Vtimer_check_in_progress = Qnil;
 }
 
 void


  reply	other threads:[~2018-01-31  9:31 UTC|newest]

Thread overview: 68+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-01-20  6:26 bug#30182: 27.0.50; Crash when doing mouse-over on modeline Sujith
2018-01-20  6:28 ` bug#30182: Update Sujith
2018-01-20 10:35   ` martin rudalics
2018-01-20 10:45     ` Sujith
2018-01-20 14:12       ` martin rudalics
2018-01-20 15:27         ` Eli Zaretskii
2018-01-21  2:15         ` Sujith
2018-01-21  3:39           ` Eli Zaretskii
2018-01-21  3:55             ` Sujith
2018-01-21 16:15               ` Eli Zaretskii
2018-01-21 18:29                 ` Sujith
2018-01-22  9:15                   ` martin rudalics
2018-01-22 15:09                     ` Sujith
2018-01-22 17:37                       ` Eli Zaretskii
2018-01-22 18:59                         ` martin rudalics
2018-01-22 20:40                           ` Eli Zaretskii
2018-01-23 18:44                             ` martin rudalics
2018-01-23 19:53                               ` Eli Zaretskii
2018-01-24  8:39                                 ` martin rudalics
2018-01-23  2:49                           ` Sujith
2018-01-23 16:18                             ` Eli Zaretskii
2018-01-23 17:07                               ` Sujith
2018-01-23 17:25                                 ` Eli Zaretskii
2018-01-23 18:10                                   ` Eli Zaretskii
2018-01-23 18:45                                     ` martin rudalics
2018-01-23 19:51                                       ` Eli Zaretskii
2018-01-24  8:38                                         ` martin rudalics
2018-01-24 19:10                                           ` Eli Zaretskii
2018-01-24 20:05                                             ` martin rudalics
2018-01-23 18:44                                   ` martin rudalics
2018-01-23 19:59                                     ` Eli Zaretskii
2018-01-24  8:39                                       ` martin rudalics
2018-01-24 19:13                                         ` Eli Zaretskii
2018-01-24 20:06                                           ` martin rudalics
2018-01-27  8:26                             ` martin rudalics
2018-01-28  0:53                               ` Sujith
2018-01-28  8:26                                 ` martin rudalics
2018-01-29  5:13                                   ` Sujith
2018-01-29 10:04                                     ` martin rudalics
2018-01-29 15:50                                       ` Eli Zaretskii
2018-01-30  8:30                                         ` martin rudalics
2018-01-30 13:32                                           ` Eli Zaretskii
2018-01-31  9:31                                             ` martin rudalics [this message]
2018-01-31 14:43                                               ` Eli Zaretskii
2018-02-01  2:29                                               ` Sujith
2018-02-01  9:26                                                 ` martin rudalics
2018-02-01 17:44                                                   ` Eli Zaretskii
2018-02-02  8:28                                                     ` martin rudalics
2018-02-02  8:37                                                       ` martin rudalics
2018-02-02 16:00                                                       ` Eli Zaretskii
2018-02-03  9:03                                                         ` martin rudalics
2018-02-03 10:29                                                           ` Eli Zaretskii
2018-02-04 10:01                                                             ` martin rudalics
2018-02-04 18:21                                                               ` Eli Zaretskii
2018-02-06  9:28                                                                 ` martin rudalics
2018-02-10  9:47                                                                   ` martin rudalics
2018-02-02 14:14                                                     ` Noam Postavsky
2018-02-02 16:11                                                       ` Eli Zaretskii
2018-02-03  9:04                                                       ` martin rudalics
2018-02-03 10:30                                                         ` Eli Zaretskii
2018-02-04 10:01                                                           ` martin rudalics
2018-02-04 18:01                                                             ` Eli Zaretskii
2018-01-29 15:53                                   ` Eli Zaretskii
2018-01-30  8:30                                     ` martin rudalics
2018-01-30 13:34                                       ` Eli Zaretskii
2018-01-31  9:31                                         ` martin rudalics
2018-01-31 14:44                                           ` Eli Zaretskii
2018-01-21 18:37           ` Sujith

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=5A718CFA.2080408@gmx.at \
    --to=rudalics@gmx.at \
    --cc=30182@debbugs.gnu.org \
    --cc=eliz@gnu.org \
    --cc=m.sujith@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.