]> git.eshelyaron.com Git - emacs.git/commitdiff
Fix use-package-defaults
authorRadon Rosborough <radon.neon@gmail.com>
Mon, 13 Feb 2017 20:48:48 +0000 (12:48 -0800)
committerRadon Rosborough <radon.neon@gmail.com>
Mon, 13 Feb 2017 20:48:48 +0000 (12:48 -0800)
This patch should address issues https://github.com/jwiegley/use-package/issues/428 and https://github.com/jwiegley/use-package/issues/429. See https://github.com/jwiegley/use-package/issues/426 for
discussion. In brief, the issue was that use-package-sort-keywords was
not applied when the predicates in use-package-defaults did not return
true, when it should have been applied unconditionally.

lisp/use-package/use-package.el

index 4f5c3fa51008bc1a0e796e8f12a05c31ffaa3ece..bba24d923f5c55ab723090e8d5fd23d9b0d546fd 100644 (file)
@@ -1169,16 +1169,12 @@ this file.  Usage:
   (unless (member :disabled args)
     (let ((name-symbol (if (stringp name) (intern name) name))
           (args (use-package-normalize-plist name args)))
-      (let ((first-spec (car use-package-defaults))
-            (rest-specs (cdr use-package-defaults)))
-        (when (eval (nth 2 first-spec))
-          (setq args (use-package-plist-maybe-put
-                      args (nth 0 first-spec) (eval (nth 1 first-spec)))))
-        (dolist (spec rest-specs)
-          (when (eval (nth 2 spec))
-            (setq args (use-package-sort-keywords
+      (dolist (spec use-package-defaults)
+        (setq args (use-package-sort-keywords
+                    (if (eval (nth 2 spec))
                         (use-package-plist-maybe-put
-                         args (nth 0 spec) (eval (nth 1 spec))))))))
+                         args (nth 0 spec) (eval (nth 1 spec)))
+                      args))))
 
       ;; When byte-compiling, pre-load the package so all its symbols are in
       ;; scope.