From mboxrd@z Thu Jan 1 00:00:00 1970 From: Bernt Hansen Subject: Clock in error - (void-function notification) Date: Wed, 26 Aug 2009 14:51:52 -0400 Message-ID: <87y6p6xvav.fsf@gollum.intra.norang.ca> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Return-path: Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1MgNbK-0004BU-9C for emacs-orgmode@gnu.org; Wed, 26 Aug 2009 14:52:06 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1MgNbF-00049D-3A for emacs-orgmode@gnu.org; Wed, 26 Aug 2009 14:52:04 -0400 Received: from [199.232.76.173] (port=60603 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1MgNbE-00049A-UC for emacs-orgmode@gnu.org; Wed, 26 Aug 2009 14:52:00 -0400 Received: from mho-01-ewr.mailhop.org ([204.13.248.71]:51308) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1MgNbE-0001yN-GE for emacs-orgmode@gnu.org; Wed, 26 Aug 2009 14:52:00 -0400 List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: Bastien Guerry , Carsten Dominik Cc: emacs-orgmode@gnu.org Hi, The following commit breaks notification for me: 754694d (Use org-notify to show a notification and possibly play a sound., 2009-08-24) I'm trying to clock in a task that has exceeded its estimated time. I have a sound set up for notification and that is no longer working. I get the following error and backtrace instead. -Bernt ----8<---- Debugger entered--Lisp error: (void-function notification) (notification) (org-show-notification (notification)) org-notify(#("Task 'Weekly Review [1/8]' should be finished by now. (1:00)" 0 6 nil 6 25 (:org-clock-minutes 331 org-category "norang" fontified nil face nil) 25 60 nil) t) (if org-clock-notification-was-shown nil (setq org-clock-notification-was-shown t) (org-notify (format "Task '%s' should be finished by now. (%s)" org-clock-heading org-clock-effort) t)) (unless org-clock-notification-was-shown (setq org-clock-notification-was-shown t) (org-notify (format "Task '%s' should be finished by now. (%s)" org-clock-heading org-clock-effort) t)) (if (>= clocked-time effort-in-minutes) (unless org-clock-notification-was-shown (setq org-clock-notification-was-shown t) (org-notify ... t)) (setq org-clock-notification-was-shown nil)) (let ((effort-in-minutes ...) (clocked-time ...)) (if (>= clocked-time effort-in-minutes) (unless org-clock-notification-was-shown ... ...) (setq org-clock-notification-was-shown nil))) (progn (let (... ...) (if ... ... ...))) (if (marker-buffer org-clock-marker) (progn (let ... ...))) (when (marker-buffer org-clock-marker) (let (... ...) (if ... ... ...))) org-clock-notify-once-if-expired() (if org-clock-effort (org-clock-notify-once-if-expired)) org-clock-update-mode-line() (save-restriction (widen) (goto-char target-pos) (org-back-to-heading t) (or interrupting (move-marker org-clock-interrupted-task nil)) (org-clock-history-push) (cond (... ... ...) (... ...)) (setq org-clock-heading-for-remember (and ... ... ...)) (setq org-clock-heading (cond ... ... ...)) (setq org-clock-heading (org-propertize org-clock-heading ... nil)) (org-clock-find-position org-clock-in-resume) (cond (... ... ... ... ... ... ...) (... ... ... ... ...) (t ... ... ... ... ... ... ... ... ...)) (move-marker org-clock-marker (point) (buffer-base-buffer)) (move-marker org-clock-hd-marker (save-excursion ... ...) (buffer-base-buffer)) (or global-mode-string (setq global-mode-string ...)) (or (memq ... global-mode-string) (setq global-mode-string ...)) (org-clock-update-mode-line) (setq org-clock-mode-line-timer (run-with-timer 60 60 ...)) (message "Clock starts at %s - %s" ts msg-extra) (run-hooks (quote org-clock-in-hook))) (save-excursion (save-restriction (widen) (goto-char target-pos) (org-back-to-heading t) (or interrupting ...) (org-clock-history-push) (cond ... ...) (setq org-clock-heading-for-remember ...) (setq org-clock-heading ...) (setq org-clock-heading ...) (org-clock-find-position org-clock-in-resume) (cond ... ... ...) (move-marker org-clock-marker ... ...) (move-marker org-clock-hd-marker ... ...) (or global-mode-string ...) (or ... ...) (org-clock-update-mode-line) (setq org-clock-mode-line-timer ...) (message "Clock starts at %s - %s" ts msg-extra) (run-hooks ...))) (save-excursion (when (and selected-task ...) (set-buffer ...) (setq target-pos ...) (move-marker selected-task nil)) (save-excursion (save-restriction ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...))) (let ((interrupting ...) ts selected-task target-pos (msg-extra "")) (when (equal select ...) (setq selected-task ...) (if selected-task ... ...)) (when interrupting (move-marker org-clock-interrupted-task ... ...) (org-clock-out t)) (when (equal select ...) (org-clock-mark-default-task)) (setq target-pos (point)) (run-hooks (quote org-clock-in-prepare-hook)) (save-excursion (when ... ... ... ...) (save-excursion ...))) (catch (quote abort) (let (... ts selected-task target-pos ...) (when ... ... ...) (when interrupting ... ...) (when ... ...) (setq target-pos ...) (run-hooks ...) (save-excursion ... ...))) org-clock-in(nil) (save-current-buffer (set-buffer (marker-buffer marker)) (widen) (goto-char pos) (org-show-context (quote agenda)) (org-show-entry) (org-cycle-hide-drawers (quote children)) (org-clock-in arg) (setq newhead (org-get-heading))) (with-current-buffer (marker-buffer marker) (widen) (goto-char pos) (org-show-context (quote agenda)) (org-show-entry) (org-cycle-hide-drawers (quote children)) (org-clock-in arg) (setq newhead (org-get-heading))) (let ((_cline ...) (_cmd this-command) (_buf1 ...) (_buf2 ...) (_undo1 buffer-undo-list) (_undo2 ...) _c1 _c2) (with-current-buffer (marker-buffer marker) (widen) (goto-char pos) (org-show-context ...) (org-show-entry) (org-cycle-hide-drawers ...) (org-clock-in arg) (setq newhead ...)) (org-agenda-change-all-lines newhead hdmarker) (when org-agenda-allow-remote-undo (setq _c1 ... _c2 ...) (when ... ... ... ...))) (org-with-remote-undo (marker-buffer marker) (with-current-buffer (marker-buffer marker) (widen) (goto-char pos) (org-show-context ...) (org-show-entry) (org-cycle-hide-drawers ...) (org-clock-in arg) (setq newhead ...)) (org-agenda-change-all-lines newhead hdmarker)) (let* ((marker ...) (hdmarker ...) (pos ...) newhead) (org-with-remote-undo (marker-buffer marker) (with-current-buffer ... ... ... ... ... ... ... ...) (org-agenda-change-all-lines newhead hdmarker))) (if (equal arg (quote ...)) (org-clock-in arg) (let* (... ... ... newhead) (org-with-remote-undo ... ... ...))) org-agenda-clock-in(nil) call-interactively(org-agenda-clock-in)