* play/fortune.el (fortune-compile): Make a new fortune dat file
authorJuanma Barranquero <lekktu@gmail.com>
Sun, 3 Jul 2011 19:27:53 +0000 (21:27 +0200)
committerLars Magne Ingebrigtsen <larsi@gnus.org>
Sun, 3 Jul 2011 19:27:53 +0000 (21:27 +0200)
compile time if the dat file does not exist.

Fixes: debbugs:5338

lisp/ChangeLog
lisp/play/fortune.el

index 6949d77..0881f9f 100644 (file)
@@ -1,3 +1,8 @@
+2011-07-03  Juanma Barranquero  <lekktu@gmail.com>
+
+       * play/fortune.el (fortune-compile): Make a new fortune dat file
+       compile time if the dat file does not exist (bug#5338).
+
 2011-07-03  Richard Kim <emacs18@gmail.com> (tiny change)
 
        * textmodes/texnfo-upd.el (texinfo-insert-menu): Don't insert
index 55b0a56..e675302 100644 (file)
@@ -244,15 +244,21 @@ the value of `fortune-file'.  This currently cannot handle directories."
   (let* ((fortune-file (expand-file-name (substitute-in-file-name file)))
         (fortune-dat (expand-file-name
                       (substitute-in-file-name
-                       (concat fortune-file fortune-database-extension)))))
-  (cond ((file-exists-p fortune-file)
-        (if (file-exists-p fortune-dat)
-            (cond ((file-newer-than-file-p fortune-file fortune-dat)
-                   (message "Compiling new fortune database %s" fortune-dat)
-                   (shell-command
-                    (concat fortune-strfile fortune-strfile-options
-                            " " fortune-file fortune-quiet-strfile-options))))))
-       (t (error "Can't compile fortune file %s" fortune-file)))))
+                       (concat fortune-file fortune-database-extension))))
+        (fortune-file-exist (file-exists-p fortune-file))
+        (fortune-dat-exist (file-exists-p fortune-dat))
+        (fortune-file-newer (file-newer-than-file-p
+                             fortune-file fortune-dat)))
+    (cond
+     (fortune-file-exist
+      (if (or (not fortune-dat-exist)
+             (and fortune-dat-exist
+                  fortune-file-newer))
+         (message "Compiling new fortune database %s" fortune-dat)
+       (shell-command
+        (concat fortune-strfile fortune-strfile-options
+                " " fortune-file fortune-quiet-strfile-options))))
+     (t (error "Can't compile fortune file %s" fortune-file)))))
 
 
 ;;; **************