Commit f01365f6 authored by Óscar Fuentes's avatar Óscar Fuentes
Browse files

password-cache: differentiate null values from non-existent entries

* password-cache.el (password-in-cache-p, password-cache-add):
  properly detect non-existent entry.  (Bug#36834)
parent 94644d86
Pipeline #2816 failed with stage
in 53 minutes and 50 seconds
......@@ -81,7 +81,8 @@ regulate cache behavior."
"Check if KEY is in the cache."
(and password-cache
key
(gethash key password-data)))
(not (eq (gethash key password-data 'password-cache-no-data)
'password-cache-no-data))))
(defun password-read (prompt &optional key)
"Read password, for use with KEY, from user, or from cache if wanted.
......@@ -125,7 +126,9 @@ user again."
(defun password-cache-add (key password)
"Add password to cache.
The password is removed by a timer after `password-cache-expiry' seconds."
(when (and password-cache-expiry (null (gethash key password-data)))
(when (and password-cache-expiry
(eq (gethash key password-data 'password-cache-no-data)
'password-cache-no-data))
(run-at-time password-cache-expiry nil
#'password-cache-remove
key))
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment