Mercurial > emacs
changeset 111050:b23826c3d7a1
Revert 2010-10-18 change; use safe-functions instead.
* cus-face.el (custom-theme-set-faces): Revert 2010-10-18 change.
Don't mark as safe.
* custom.el (custom-theme-set-variables): Likewise.
(load-theme): Add custom-theme-set-faces and
custom-theme-set-variables to safe-functions while loading.
(custom-enabled-themes): Mark as risky.
author | Chong Yidong <cyd@stupidchicken.com> |
---|---|
date | Tue, 19 Oct 2010 15:22:40 -0400 |
parents | bd12e9f7bf79 |
children | 111edd4c8e15 |
files | lisp/ChangeLog lisp/cus-face.el lisp/custom.el |
diffstat | 3 files changed, 17 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/ChangeLog Tue Oct 19 15:20:33 2010 -0400 +++ b/lisp/ChangeLog Tue Oct 19 15:22:40 2010 -0400 @@ -1,3 +1,13 @@ +2010-10-19 Chong Yidong <cyd@stupidchicken.com> + + * cus-face.el (custom-theme-set-faces): Revert 2010-10-18 change. + Don't mark as safe. + + * custom.el (custom-theme-set-variables): Likewise. + (load-theme): Add custom-theme-set-faces and + custom-theme-set-variables to safe-functions while loading. + (custom-enabled-themes): Mark as risky. + 2010-10-18 Julien Danjou <julien@danjou.info> * bindings.el: Remove end dashes in default mode-line-format.
--- a/lisp/cus-face.el Tue Oct 19 15:20:33 2010 -0400 +++ b/lisp/cus-face.el Tue Oct 19 15:22:40 2010 -0400 @@ -349,8 +349,6 @@ (put face 'face-override-spec nil) (face-spec-set face spec t)))))))) -(put 'custom-theme-set-faces 'safe-function t) - ;; XEmacs compability function. In XEmacs, when you reset a Custom ;; Theme, you have to specify the theme to reset it to. We just apply ;; the next theme.
--- a/lisp/custom.el Tue Oct 19 15:20:33 2010 -0400 +++ b/lisp/custom.el Tue Oct 19 15:22:40 2010 -0400 @@ -993,8 +993,6 @@ (and (or now (default-boundp symbol)) (put symbol 'variable-comment comment))))))) -(put 'custom-theme-set-variables 'safe-function t) - ;;; Defining themes. @@ -1107,6 +1105,8 @@ (let ((custom-enabling-themes t)) (enable-theme 'user)))) +(defvar safe-functions) ; From unsafep.el + (defun load-theme (theme &optional no-enable) "Load a theme's settings from its file. Normally, this also enables the theme; use `disable-theme' to @@ -1135,7 +1135,11 @@ ;; Instead of simply loading the theme file, read it manually. (with-temp-buffer (insert-file-contents fn) + (require 'unsafep) (let ((custom--inhibit-theme-enable no-enable) + (safe-functions (append '(custom-theme-set-variables + custom-theme-set-faces) + safe-functions)) form scar) (while (setq form (let ((read-circle nil)) (condition-case nil @@ -1234,6 +1238,7 @@ :group 'customize :type '(repeat symbol) :set-after '(custom-theme-directory custom-theme-load-path) + :risky t :set (lambda (symbol themes) ;; Avoid an infinite loop when custom-enabled-themes is ;; defined in a theme (e.g. `user'). Enabling the theme sets