summaryrefslogtreecommitdiff
path: root/lisp
diff options
context:
space:
mode:
authorGlenn Morris <rgm@gnu.org>2008-02-08 05:00:25 +0000
committerGlenn Morris <rgm@gnu.org>2008-02-08 05:00:25 +0000
commitd9d35d6bb0a5baba6b86e2555bda08b3f4d04c3e (patch)
tree57c5fe1c73ba5a7635311a6c003133fed14bd3a5 /lisp
parentba936fbfae3e8138ca1c47dd3924334fa2a54276 (diff)
downloademacs-d9d35d6bb0a5baba6b86e2555bda08b3f4d04c3e.tar.gz
(custom-theme-set-variables): Sort symbols that are
dependencies before symbols that depend on them. (custom-enabled-themes): Set after custom-theme-directory.
Diffstat (limited to 'lisp')
-rw-r--r--lisp/custom.el5
1 files changed, 4 insertions, 1 deletions
diff --git a/lisp/custom.el b/lisp/custom.el
index 64c0d2e6a6f..1a045483491 100644
--- a/lisp/custom.el
+++ b/lisp/custom.el
@@ -885,7 +885,7 @@ in SYMBOL's list property `theme-value' \(using `custom-push-theme')."
(memq (get symbol 'custom-autoload) '(nil noset)))
;; This symbol needs to be autoloaded, even just for a `set'.
(custom-load-symbol symbol))))
-
+
;; Move minor modes and variables with explicit requires to the end.
(setq args
(sort args
@@ -898,6 +898,8 @@ in SYMBOL's list property `theme-value' \(using `custom-push-theme')."
(error "Circular custom dependency between `%s' and `%s'"
sym1 sym2))
(2-then-1 nil)
+ ;; 1 is a dependency of 2, so needs to be set first.
+ (1-then-2)
;; Put minor modes and symbols with :require last.
;; Putting minor modes last ensures that the mode
;; function will see other customized values rather
@@ -1092,6 +1094,7 @@ This does not include the `user' theme, which is set by Customize,
and always takes precedence over other Custom Themes."
:group 'customize
:type '(repeat symbol)
+ :set-after '(custom-theme-directory) ; so we can find the themes
:set (lambda (symbol themes)
;; Avoid an infinite loop when custom-enabled-themes is
;; defined in a theme (e.g. `user'). Enabling the theme sets