From 36c0a3016e88cd380752758379a48d5e942601c4 Mon Sep 17 00:00:00 2001 From: Stefan Monnier Date: Mon, 15 Apr 2013 22:10:16 -0400 Subject: [PATCH] * lisp/emacs-lisp/nadvice.el (add-function): Default simple vars to their global bindings. --- lisp/ChangeLog | 3 +++ lisp/emacs-lisp/nadvice.el | 7 +++---- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index b5487896f74..9554625b6e4 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,5 +1,8 @@ 2013-04-16 Stefan Monnier + * emacs-lisp/nadvice.el (add-function): Default simple vars to their + global bindings. + * doc-view.el (doc-view-start-process): Handle url-handler directories. 2013-04-15 Dmitry Gutov diff --git a/lisp/emacs-lisp/nadvice.el b/lisp/emacs-lisp/nadvice.el index db8a0753466..6c09ddfb8cf 100644 --- a/lisp/emacs-lisp/nadvice.el +++ b/lisp/emacs-lisp/nadvice.el @@ -236,9 +236,8 @@ PROPS is an alist of additional properties, among which the following have a special meaning: - `name': a string or symbol. It can be used to refer to this piece of advice. -PLACE cannot be a simple variable. Instead it should either be -\(default-value 'VAR) or (local 'VAR) depending on whether FUNCTION -should be applied to VAR buffer-locally or globally. +If PLACE is a simple variable, only its global value will be affected. +Use (local 'VAR) if you want to apply FUNCTION to VAR buffer-locally. If one of FUNCTION or OLDFUN is interactive, then the resulting function is also interactive. There are 3 cases: @@ -251,7 +250,7 @@ is also interactive. There are 3 cases: (cond ((eq 'local (car-safe place)) (setq place `(advice--buffer-local ,@(cdr place)))) ((symbolp place) - (error "Use (default-value '%S) or (local '%S)" place place))) + (setq place `(default-value ',place)))) `(advice--add-function ,where (gv-ref ,place) ,function ,props)) ;;;###autoload -- 2.39.2