From cf499a1a42695fb0ce3aee0b1e6b48a3078ddca3 Mon Sep 17 00:00:00 2001 From: Julien Danjou Date: Tue, 20 Sep 2011 14:08:04 +0000 Subject: password-cache.el (password-cache-remove): Remove entries even if the value is nil, so that password with a nil value (negative caching) is possible to invalidate. auth-source.el (auth-source-format-cache-entry): New function. --- lisp/password-cache.el | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) (limited to 'lisp/password-cache.el') diff --git a/lisp/password-cache.el b/lisp/password-cache.el index 941428d5291..c425e0aa7e8 100644 --- a/lisp/password-cache.el +++ b/lisp/password-cache.el @@ -116,13 +116,14 @@ but can be invoked at any time to forcefully remove passwords from the cache. This may be useful when it has been detected that a password is invalid, so that `password-read' query the user again." - (let ((password (symbol-value (intern-soft key password-data)))) - (when password - (when (stringp password) - (if (fboundp 'clear-string) - (clear-string password) - (fillarray password ?_))) - (unintern key password-data)))) + (let ((sym (intern-soft key password-data))) + (when sym + (let ((password (symbol-value sym))) + (when (stringp password) + (if (fboundp 'clear-string) + (clear-string password) + (fillarray password ?_))) + (unintern key password-data))))) (defun password-cache-add (key password) "Add password to cache. -- cgit v1.2.1