Browse Source

Merge branch 'maint-fixes' into maint

Bastien Guerry 12 years ago
parent
commit
1b4e396b6b
2 changed files with 22 additions and 2 deletions
  1. 21 1
      lisp/org-compat.el
  2. 1 1
      lisp/org-odt.el

+ 21 - 1
lisp/org-compat.el

@@ -256,7 +256,6 @@ Works on both Emacs and XEmacs."
       (when (boundp 'zmacs-regions)
 	(setq zmacs-regions t)))))
 
-
 ;; Invisibility compatibility
 
 (defun org-remove-from-invisibility-spec (arg)
@@ -456,6 +455,27 @@ With two arguments, return floor and remainder of their quotient."
 	   `(condition-case-no-debug ,var ,bodyform ,@handlers))
       `(condition-case ,var ,bodyform ,@handlers)))
 
+;; RECURSIVE has been introduced with Emacs 23.2.
+;; This is copying and adapted from `tramp-compat-delete-directory'
+(defun org-delete-directory (directory &optional recursive)
+  "Compatibility function for `delete-directory'."
+  (if (null recursive)
+      (delete-directory directory)
+    (condition-case nil
+	(funcall 'delete-directory directory recursive)
+      ;; This Emacs version does not support the RECURSIVE flag.  We
+      ;; use the implementation from Emacs 23.2.
+      (wrong-number-of-arguments
+       (setq directory (directory-file-name (expand-file-name directory)))
+       (if (not (file-symlink-p directory))
+	   (mapc (lambda (file)
+		   (if (eq t (car (file-attributes file)))
+		       (org-delete-directory file recursive)
+		     (delete-file file)))
+		 (directory-files
+		  directory 'full "^\\([^.]\\|\\.\\([^.]\\|\\..\\)\\).*")))
+       (delete-directory directory)))))
+
 ;;;###autoload
 (defmacro org-check-version ()
   "Try very hard to provide sensible version strings."

+ 1 - 1
lisp/org-odt.el

@@ -446,7 +446,7 @@ values.  See Info node `(emacs) File Variables'."
 			 (kill-buffer)))
 		     xml-files))
 	     ;; delete temporary directory.
-	     (delete-directory org-odt-zip-dir t)))))
+	     (org-delete-directory org-odt-zip-dir t)))))
      (org-condition-case-unless-debug err
 	 (prog1 (progn ,@body)
 	   (funcall --cleanup-xml-buffers))