* gettext.el (gettext-mapcar*): Eliminate recursion.
authorueno <ueno>
Tue, 7 May 2002 01:52:30 +0000 (01:52 +0000)
committerueno <ueno>
Tue, 7 May 2002 01:52:30 +0000 (01:52 +0000)
lisp/gettext.el

index 5e9cbe9..31f5740 100644 (file)
 (defun gettext-mapcar* (function &rest args)
   "Apply FUNCTION to successive cars of all ARGS.
 Return the list of results."
-  (unless (memq nil args)
-    (cons (apply function (mapcar #'car args))
-         (apply #'gettext-mapcar* function
-                (mapcar #'cdr args)))))
+  (let (result)
+    (while (not (memq nil args))
+      (push (apply function (mapcar #'car args)) result)
+      (setq args (mapcar #'cdr args)))
+    (nreverse result)))
 
 (defun gettext-load-message-catalogue (file)
   (with-temp-buffer