Mercurial > hg > xemacs-beta
diff lisp/vm/vm-undo.el @ 70:131b0175ea99 r20-0b30
Import from CVS: tag r20-0b30
author | cvs |
---|---|
date | Mon, 13 Aug 2007 09:02:59 +0200 |
parents | ec9a17fef872 |
children | 0d2f883870bc |
line wrap: on
line diff
--- a/lisp/vm/vm-undo.el Mon Aug 13 09:00:04 2007 +0200 +++ b/lisp/vm/vm-undo.el Mon Aug 13 09:02:59 2007 +0200 @@ -1,5 +1,5 @@ ;;; Commands to undo message attribute changes in VM -;;; Copyright (C) 1989-1995 Kyle E. Jones +;;; Copyright (C) 1989, 1990, 1993, 1994 Kyle E. Jones ;;; ;;; This program is free software; you can redistribute it and/or modify ;;; it under the terms of the GNU General Public License as published by @@ -360,8 +360,13 @@ (vm-buffer-of (vm-real-message-of m))) vm-folder-read-only)))) + (aset (vm-attributes-of m) attr-index flag) + (vm-mark-for-summary-update m) (cond ((not norecord) + (if (eq vm-flush-interval t) + (vm-stuff-virtual-attributes m) + (vm-set-modflag-of m t)) (setq vmp (cons (vm-real-message-of m) (vm-virtual-messages-of m))) (while vmp (if (eq (vm-attributes-of m) (vm-attributes-of (car vmp))) @@ -378,14 +383,7 @@ (vm-undo-record (list function (car m-list) (not flag))) (vm-undo-boundary) (vm-increment vm-modification-counter)) - (setq m-list (cdr m-list))))) - (aset (vm-attributes-of m) attr-index flag) - (vm-mark-for-summary-update m) - (if (not norecord) - (if (eq vm-flush-interval t) - (vm-stuff-virtual-attributes m) - (vm-set-modflag-of m t))))))) - + (setq m-list (cdr m-list))))))))) (defun vm-set-labels (m labels) (let ((m-list nil) @@ -399,6 +397,12 @@ (vm-buffer-of (vm-real-message-of m))) vm-folder-read-only)))) + (vm-set-labels-of m labels) + (vm-set-label-string-of m nil) + (vm-mark-for-summary-update m) + (if (eq vm-flush-interval t) + (vm-stuff-virtual-attributes m) + (vm-set-modflag-of m t)) (setq vmp (cons (vm-real-message-of m) (vm-virtual-messages-of m))) (while vmp (if (eq (vm-attributes-of m) (vm-attributes-of (car vmp))) @@ -415,14 +419,7 @@ (vm-undo-record (list 'vm-set-labels m old-labels)) (vm-undo-boundary) (vm-increment vm-modification-counter)) - (setq m-list (cdr m-list))) - (vm-set-labels-of m labels) - (vm-set-label-string-of m nil) - (vm-mark-for-summary-update m) - (if (eq vm-flush-interval t) - (vm-stuff-virtual-attributes m) - (vm-set-modflag-of m t)))))) - + (setq m-list (cdr m-list))))))) (defun vm-set-new-flag (m flag &optional norecord) (vm-set-xxxx-flag m flag norecord 'vm-set-new-flag 0))