]> git.eshelyaron.com Git - emacs.git/commitdiff
(vc-arch-trim-make-sentinel): Use a closure.
authorStefan Monnier <monnier@iro.umontreal.ca>
Tue, 22 Jul 2008 17:16:52 +0000 (17:16 +0000)
committerStefan Monnier <monnier@iro.umontreal.ca>
Tue, 22 Jul 2008 17:16:52 +0000 (17:16 +0000)
(vc-arch-trim-one-revlib): Delete temp directories as well.

lisp/ChangeLog
lisp/vc-arch.el

index bfa524d6f0614113ff00d54410340e7b2235749e..6819b3801db051bc4553c83545aa1bcb96a1104c 100644 (file)
@@ -1,12 +1,15 @@
+2008-07-22  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+       * vc-arch.el (vc-arch-trim-make-sentinel): Use a closure.
+       (vc-arch-trim-one-revlib): Delete temp directories as well.
+
 2008-07-22  Stephen Eglen  <stephen@gnu.org>
 
-       * iswitchb.el (iswitchb-delim): New variable, suggested by Ted
-       Roden.
+       * iswitchb.el (iswitchb-delim): New variable, suggested by Ted Roden.
 
 2008-07-22  Sven Joachim <svenjoac@gmx.de>  (tiny change)
 
-       * vc-dir.el (vc-dir-recompute-file-state): Fix mismatched
-       paenthesis.
+       * vc-dir.el (vc-dir-recompute-file-state): Fix mismatched paenthesis.
 
 2008-07-22  Miles Bader  <miles@gnu.org>
 
@@ -29,8 +32,7 @@
        * menu-bar.el (menu-bar-line-wrapping-menu): Use Visual Line mode
        for "word wrap" command.
 
-       * simple.el (visual-line-mode): Disable
-       truncate-partial-width-windows.
+       * simple.el (visual-line-mode): Disable truncate-partial-width-windows.
 
 2008-07-21  Dan Nicolaescu  <dann@ics.uci.edu>
 
index 5aeeaf5e8647ae9bb03a25b5950130f95f1dfb06..cc8c8ae3c1ee464ff46f8179ae3de1964fe7ed50 100644 (file)
@@ -488,16 +488,20 @@ Return non-nil if FILE is unchanged."
 
 (defun vc-arch-trim-make-sentinel (revs)
   (if (null revs) (lambda (proc msg) (message "VC-Arch trimming ... done"))
-    `(lambda (proc msg)
-       (message "VC-Arch trimming %s..." ',(file-name-nondirectory (car revs)))
-       (rename-file ,(car revs) ,(concat (car revs) "*rm*"))
+    (lexical-let ((revs revs))
+      (lambda (proc msg)
+        (message "VC-Arch trimming %s..." (file-name-nondirectory (car revs)))
+        (rename-file (car revs) (concat (car revs) "*rm*"))
        (setq proc (start-process "vc-arch-trim" nil
-                                 "rm" "-rf" ',(concat (car revs) "*rm*")))
-       (set-process-sentinel proc (vc-arch-trim-make-sentinel ',(cdr revs))))))
+                                  "rm" "-rf" (concat (car revs) "*rm*")))
+        (set-process-sentinel proc (vc-arch-trim-make-sentinel (cdr revs)))))))
 
 (defun vc-arch-trim-one-revlib (dir)
   "Delete half of the revisions in the revision library."
   (interactive "Ddirectory: ")
+  (let ((garbage (directory-files dir 'full "\\`,," 'nosort)))
+    (when garbage
+      (funcall (vc-arch-trim-make-sentinel garbage) nil nil)))
   (let ((revs
          (sort (delq nil
                      (mapcar