From cb5359f4e638566584b50744b1ccf9a9f8f987b3 Mon Sep 17 00:00:00 2001 From: hmurata Date: Sun, 20 Jul 2003 15:43:19 +0000 Subject: [PATCH] * wl-action.el (wl-summary-set-mark): Fixed last change. --- wl/ChangeLog | 4 +++ wl/wl-action.el | 79 +++++++++++++++++++++++++++---------------------------- 2 files changed, 43 insertions(+), 40 deletions(-) diff --git a/wl/ChangeLog b/wl/ChangeLog index 3470062..242ecc5 100644 --- a/wl/ChangeLog +++ b/wl/ChangeLog @@ -1,3 +1,7 @@ +2003-07-20 Hiroya Murata + + * wl-action.el (wl-summary-set-mark): Fixed last change. + 2003-07-20 Yuuichi Teranishi * wl-summary.el (wl-summary-mark-as-read-internal): Fixed the diff --git a/wl/wl-action.el b/wl/wl-action.el index 1aebd69..d45aa43 100644 --- a/wl/wl-action.el +++ b/wl/wl-action.el @@ -59,46 +59,45 @@ Return number if put mark succeed" (current (wl-summary-message-number)) (action (assoc set-mark wl-summary-mark-action-list)) visible mark cur-mark) - (save-excursion - ;; Put mark - (setq visible (or - ;; not-interactive and visible - (and number (wl-summary-jump-to-msg number)) - ;; interactive - (and (null number) current)) - number (or number current) - cur-mark (nth 1 (wl-summary-registered-temp-mark number))) - (if (and cur-mark - (wl-summary-reserve-temp-mark-p cur-mark)) - (if interactive - (error "Already marked as `%s'" cur-mark) - (setq number nil)) - (when (and interactive - (null data) - (wl-summary-action-argument-function action)) - (setq data (funcall (wl-summary-action-argument-function action) - (wl-summary-action-symbol action) - number))) - (wl-summary-unset-mark number) - (when visible - (wl-summary-mark-line set-mark) - (when wl-summary-highlight - (wl-highlight-summary-current-line)) - (when data - (wl-summary-print-destination number data))) - ;; Set action. - (funcall (wl-summary-action-set-function action) - number - (wl-summary-action-mark action) - data) - (set-buffer-modified-p nil))) - ;; Move the cursor. - (if (or interactive (interactive-p)) - (if (eq wl-summary-move-direction-downward nil) - (wl-summary-prev) - (wl-summary-next))) - ;; Return value. - number)) + (prog1 + (save-excursion + ;; Put mark + (setq visible (or + ;; not-interactive and visible + (and number (wl-summary-jump-to-msg number)) + ;; interactive + (and (null number) current)) + number (or number current) + cur-mark (nth 1 (wl-summary-registered-temp-mark number))) + (if (wl-summary-reserve-temp-mark-p cur-mark) + (when interactive + (error "Already marked as `%s'" cur-mark)) + (when (and interactive + (null data) + (wl-summary-action-argument-function action)) + (setq data (funcall (wl-summary-action-argument-function action) + (wl-summary-action-symbol action) + number))) + (wl-summary-unset-mark number) + (when visible + (wl-summary-mark-line set-mark) + (when wl-summary-highlight + (wl-highlight-summary-current-line)) + (when data + (wl-summary-print-destination number data))) + ;; Set action. + (funcall (wl-summary-action-set-function action) + number + (wl-summary-action-mark action) + data) + (set-buffer-modified-p nil) + ;; Return value. + number)) + ;; Move the cursor. + (if (or interactive (interactive-p)) + (if (eq wl-summary-move-direction-downward nil) + (wl-summary-prev) + (wl-summary-next)))))) (defun wl-summary-register-target-mark (number mark data) (or (memq number wl-summary-buffer-target-mark-list) -- 1.7.10.4