diff lisp/gnus/gnus-demon.el @ 42:8b8b7f3559a2 r19-15b104

Import from CVS: tag r19-15b104
author cvs
date Mon, 13 Aug 2007 08:54:51 +0200
parents ec9a17fef872
children 131b0175ea99
line wrap: on
line diff
--- a/lisp/gnus/gnus-demon.el	Mon Aug 13 08:54:26 2007 +0200
+++ b/lisp/gnus/gnus-demon.el	Mon Aug 13 08:54:51 2007 +0200
@@ -74,6 +74,8 @@
 (defvar gnus-demon-idle-time 0)
 (defvar gnus-demon-handler-state nil)
 (defvar gnus-demon-last-keys nil)
+(defvar gnus-inhibit-demon nil
+  "*If non-nil, no daemonic function will be run.")
 
 (eval-and-compile
   (autoload 'timezone-parse-date "timezone")
@@ -172,10 +174,12 @@
     (setq gnus-demon-idle-time 0)
     (setq gnus-demon-idle-has-been-called nil))
   ;; Disable all daemonic stuff if we're in the minibuffer
-  (unless (window-minibuffer-p (selected-window))
+  (when (and (not (window-minibuffer-p (selected-window)))
+	     (not gnus-inhibit-demon))
     ;; Then we go through all the handler and call those that are
     ;; sufficiently ripe.
     (let ((handlers gnus-demon-handler-state)
+	  (gnus-inhibit-demon t)
 	  handler time idle)
       (while handlers
 	(setq handler (pop handlers))