[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[emacs-wiki-discuss] REALLY annoying bug in planner-muse (LONG backtrace
From: |
Paul Lussier |
Subject: |
[emacs-wiki-discuss] REALLY annoying bug in planner-muse (LONG backtrace incl) |
Date: |
Thu, 17 Nov 2005 11:22:37 -0500 |
User-agent: |
Gnus/5.11 (Gnus v5.11) Emacs/22.0.50 (gnu/linux) |
mwolson et al,
I have the following line in a planner page:
Kerberos | 0:55:54 | 14.2% | Fix kerberos {{Tasks:911}} (2)
Which, not accounting for the mark-up characters of [ and ] is EXACTLY
80 characters long, (something tells me at this point you probably
know where I'm going with this ;) which happens to be exactly the
width of my frame.
Starting at the top of the buffer, neither C-n *nor* the down arrow
key are able to move point past this line. Using M-> and going up
workk just fine. Additionally, I suspect this line of being the
instigator in M-X plan going into an endless loop :
gettimeofday({1132243006, 295791}, NULL) = 0
brk(0x8c6c000) = 0x8c6c000
brk(0x8c70000) = 0x8c70000
brk(0x8c74000) = 0x8c74000
brk(0x8c79000) = 0x8c79000
brk(0x8c7d000) = 0x8c7d000
brk(0x8c81000) = 0x8c81000
gettimeofday({1132243006, 460005}, NULL) = 0
gettimeofday({1132243006, 594072}, NULL) = 0
brk(0x8c85000) = 0x8c85000
brk(0x8c8a000) = 0x8c8a000
brk(0x8c8e000) = 0x8c8e000
gettimeofday({1132243006, 752105}, NULL) = 0
gettimeofday({1132243006, 885685}, NULL) = 0
gettimeofday({1132243007, 38530}, NULL) = 0
gettimeofday({1132243007, 171502}, NULL) = 0
gettimeofday({1132243007, 333215}, NULL) = 0
as seen by strace on emacs. The emacs buffer never comes back from
M-x plan unless I C-g out of it. Enabling toggle-debug-on-(quit,
error) shows me this:
Debugger entered--Lisp error: (quit)
ad-substitute-tree(#[(form) "�=" [form ad-do-it] 2] #[(form) ""
[around-form] 1] (t))
ad-substitute-tree(#[(form) "�=" [form ad-do-it] 2] #[(form) ""
[around-form] 1] (nil t))
ad-substitute-tree(#[(form) "�=" [form ad-do-it] 2] #[(form) ""
[around-form] 1] ((concat "^. [^ ]+ [^ ]+ " (regexp-quote ...) "\\("
(regexp-quote ...) "\\)$") nil t))
ad-substitute-tree(#[(form) "�=" [form ad-do-it] 2] #[(form) ""
[around-form] 1] (re-search-forward (concat "^. [^ ]+ [^ ]+ " (regexp-quote
...) "\\(" (regexp-quote ...) "\\)$") nil t))
ad-substitute-tree(#[(form) "�=" [form ad-do-it] 2] #[(form) ""
[around-form] 1] ((re-search-forward (concat "^. [^ ]+ [^ ]+ " ... "\\(" ...
"\\)$") nil t) (replace-match (ad-get-arg 0) t t nil 1)))
ad-substitute-tree(#[(form) "�=" [form ad-do-it] 2] #[(form) ""
[around-form] 1] (while (re-search-forward (concat "^. [^ ]+ [^ ]+ " ... "\\("
... "\\)$") nil t) (replace-match (ad-get-arg 0) t t nil 1)))
ad-substitute-tree(#[(form) "�=" [form ad-do-it] 2] #[(form) ""
[around-form] 1] ((while (re-search-forward ... nil t) (replace-match ... t t
nil 1)) (save-buffer) (kill-buffer (current-buffer))))
ad-substitute-tree(#[(form) "�=" [form ad-do-it] 2] #[(form) ""
[around-form] 1] ((goto-char (point-min)) (while (re-search-forward ... nil t)
(replace-match ... t t nil 1)) (save-buffer) (kill-buffer (current-buffer))))
ad-substitute-tree(#[(form) "�=" [form ad-do-it] 2] #[(form) ""
[around-form] 1] ((find-file-noselect timeclock-file) (goto-char (point-min))
(while (re-search-forward ... nil t) (replace-match ... t t nil 1))
(save-buffer) (kill-buffer (current-buffer))))
ad-substitute-tree(#[(form) "�=" [form ad-do-it] 2] #[(form) ""
[around-form] 1] (with-current-buffer (find-file-noselect timeclock-file)
(goto-char (point-min)) (while (re-search-forward ... nil t) (replace-match ...
t t nil 1)) (save-buffer) (kill-buffer (current-buffer))))
ad-substitute-tree(#[(form) "�=" [form ad-do-it] 2] #[(form) ""
[around-form] 1] ((with-current-buffer (find-file-noselect timeclock-file)
(goto-char ...) (while ... ...) (save-buffer) (kill-buffer ...))))
ad-substitute-tree(#[(form) "�=" [form ad-do-it] 2] #[(form) ""
[around-form] 1] (ad-do-it (with-current-buffer (find-file-noselect
timeclock-file) (goto-char ...) (while ... ...) (save-buffer) (kill-buffer
...))))
ad-substitute-tree(#[(form) "�=" [form ad-do-it] 2] #[(form) ""
[around-form] 1] ((when (string= ... planner-timeclock-current-task) (setq
planner-timeclock-current-task ...)) ad-do-it (with-current-buffer
(find-file-noselect timeclock-file) (goto-char ...) (while ... ...)
(save-buffer) (kill-buffer ...))))
ad-substitute-tree(#[(form) "�=" [form ad-do-it] 2] #[(form) ""
[around-form] 1] (((info ...)) (when (string= ...
planner-timeclock-current-task) (setq planner-timeclock-current-task ...))
ad-do-it (with-current-buffer (find-file-noselect timeclock-file) (goto-char
...) (while ... ...) (save-buffer) (kill-buffer ...))))
ad-substitute-tree(#[(form) "�=" [form ad-do-it] 2] #[(form) ""
[around-form] 1] (let ((info ...)) (when (string= ...
planner-timeclock-current-task) (setq planner-timeclock-current-task ...))
ad-do-it (with-current-buffer (find-file-noselect timeclock-file) (goto-char
...) (while ... ...) (save-buffer) (kill-buffer ...))))
ad-assemble-advised-definition(function (description) "$ad-doc:
planner-edit-task-description$" (interactive (list (let* ... ... ...)))
(ad-Orig-planner-edit-task-description description) nil ((planner-appt-task nil
t (advice lambda nil "Update the appointment as well." ... ... ... ...))
(planner-timeclock nil t (advice lambda nil "Update the timelog as well.
Warning! Do not have duplicate tasks!" ...))) nil)
ad-make-advised-definition(planner-edit-task-description)
ad-activate-advised-definition(planner-edit-task-description nil)
ad-activate(planner-edit-task-description)
(lambda (args) (apply (function ad-enable-advice) args) (ad-activate (car
args)))((planner-edit-task-description around planner-appt-task))
mapcar((lambda (args) (apply (function ad-enable-advice) args) (ad-activate
(car args))) ((planner-create-task-from-info around planner-appt-task)
(planner-edit-task-description around planner-appt-task)
(planner-copy-or-move-task around planner-appt-task) (plan around
planner-appt-task) (planner-id-update-tasks-on-page around planner-appt-task)
(planner-update-task around planner-appt-task) (planner-delete-task before
planner-appt-task) (planner-task-done before planner-appt-task)
(planner-task-cancelled before planner-appt-task)))
planner-appt-enable-all-advice()
(unwind-protect (progn (planner-appt-disable-all-advice)
(planner-appt-debug-message "all advice disabled") (if ... ... ...))
(planner-appt-enable-all-advice) (planner-appt-debug-message "all advice
enabled"))
(with-planner-appt-task-advice-disabled (if (planner-appt-task-nagging-p ...)
(progn ... ...) (unless ... ...)))
(let* ((info ...) (appt ...) (time ...))
(with-planner-appt-task-advice-disabled (if ... ... ...)))
(cond ((not --planner-appt-planning) (let ... ...)) (t (let* ... ...)))
(progn (planner-appt-debug-message "*** called advice on
planner-copy-or-move-task; " (if --planner-appt-planning "in plan" "not in
plan")) (cond (... ...) (t ...)))
(let (ad-return-value) (progn (planner-appt-debug-message "*** called advice
on planner-copy-or-move-task; " ...) (cond ... ...)) ad-return-value)
planner-copy-or-move-task("2005.11.17")
(if (planner-copy-or-move-task date) (progn (setq count ...)))
(when (planner-copy-or-move-task date) (setq count (1+ count)))
(condition-case err (when (planner-copy-or-move-task date) (setq count ...))
(error (unless ... ... ...) (forward-line -1) nil))
(if (looking-at "^#?\\([A-C]\\)\\([0-9]*\\)\\s-+\\([^XC]\\)\\s-+\\(.+\\)")
(condition-case err (when ... ...) (error ... ... nil)) (forward-line -1))
(while (not (bobp)) (goto-char (planner-line-beginning-position)) (if
(looking-at "^#?\\([A-C]\\)\\([0-9]*\\)\\s-+\\([^XC]\\)\\s-+\\(.+\\)")
(condition-case err ... ...) (forward-line -1)))
(save-restriction (narrow-to-region (and ... ...) (and ... ...)) (when
planner-add-task-at-end-flag (reverse-region ... ...)) (goto-char (point-max))
(while (not ...) (goto-char ...) (if ... ... ...)) (when
planner-add-task-at-end-flag (reverse-region ... ...)) (when (and ... ... ...
...) (message ... error-count)))
(save-excursion (save-restriction (narrow-to-region ... ...) (when
planner-add-task-at-end-flag ...) (goto-char ...) (while ... ... ...) (when
planner-add-task-at-end-flag ...) (when ... ...)))
(let ((planner-tasks-file-behavior nil)) (save-excursion (save-restriction
... ... ... ... ... ...)))
(let ((start ...) (finish ...) (buffer ...) (error-count 0) (count 0)
(live-buffers ...)) (let (...) (save-excursion ...)) (when
planner-tasks-file-behavior (planner-save-buffers live-buffers)) (set-buffer
buffer) count)
planner-copy-or-move-region(1 3888 "2005.11.17" t)
(let ((planner-tasks-file-behavior nil)) (planner-copy-or-move-region
(point-min) (point-max) (planner-today) t))
(progn (let (...) (planner-copy-or-move-region ... ... ... t)) (unless
(buffer-modified-p) (kill-buffer ...)))
(if (not (equal today ...)) (progn (let ... ...) (unless ... ...)))
(when (not (equal today ...)) (let (...) (planner-copy-or-move-region ... ...
... t)) (unless (buffer-modified-p) (kill-buffer ...)))
(while names (planner-find-file (car names)) (when (not ...) (let ... ...)
(unless ... ...)) (setq names (cdr names)))
(progn (while names (planner-find-file ...) (when ... ... ...) (setq names
...)))
(if force-days (progn (while names ... ... ...)))
(when force-days (while names (planner-find-file ...) (when ... ... ...)
(setq names ...)))
(let* ((today ...) (names ...) (today-buffer ...)
(planner-tasks-file-behavior ...) (planner-use-other-window nil) (live-buffers
...)) (when (and ... ...) (setcdr ... nil)) (when force-days (while names ...
... ...)) (if (or planner-carry-tasks-forward ... ...) (planner-goto-today)
(planner-goto ...)) (when planner-tasks-file-behavior (planner-save-buffers
live-buffers)))
(progn (unless force-days (setq force-days ...)) (when (and ... ...) (setq
force-days t)) (planner-goto-today) (let* (... ... ... ... ... ...) (when ...
...) (when force-days ...) (if ... ... ...) (when planner-tasks-file-behavior
...)))
(if planner-use-day-pages (progn (unless force-days ...) (when ... ...)
(planner-goto-today) (let* ... ... ... ... ...)) (planner-find-file (or
planner-default-page planner-initial-page)))
ad-Orig-plan(nil)
(setq ad-return-value (ad-Orig-plan force-days))
(let ((--planner-appt-planning t)) (setq ad-return-value (ad-Orig-plan
force-days)))
(progn (planner-appt-debug-message "*** called advice on plan") (let (...)
(setq ad-return-value ...)))
(let (ad-return-value) (progn (planner-appt-debug-message "*** called advice
on plan") (let ... ...)) ad-return-value)
plan(nil)
call-interactively(plan)
execute-extended-command(nil)
call-interactively(execute-extended-command)
Any ideas?
--
Seeya,
Paul
- [emacs-wiki-discuss] REALLY annoying bug in planner-muse (LONG backtrace incl),
Paul Lussier <=
- Re: [emacs-wiki-discuss] REALLY annoying bug in planner-muse (LONG backtrace incl), John Sullivan, 2005/11/17
- Re: [emacs-wiki-discuss] REALLY annoying bug in planner-muse (LONG backtrace incl), Jim Ottaway, 2005/11/18
- Re: [emacs-wiki-discuss] REALLY annoying bug in planner-muse (LONG backtrace incl), Jim Ottaway, 2005/11/18
- Message not available
- Re: [emacs-wiki-discuss] Re: REALLY annoying bug in planner-muse (LONG backtrace incl), Janne Hellsten, 2005/11/21
- Re: [emacs-wiki-discuss] Re: REALLY annoying bug in planner-muse (LONG backtrace incl), Jim Ottaway, 2005/11/21
- Re: [emacs-wiki-discuss] Re: REALLY annoying bug in planner-muse (LONG backtrace incl), Janne Hellsten, 2005/11/22
- Re: [emacs-wiki-discuss] Re: REALLY annoying bug in planner-muse (LONG backtrace incl), Jim Ottaway, 2005/11/22