Function: majutsu-gerrit--account-start-avatar-fetch
majutsu-gerrit--account-start-avatar-fetch is a natively compiled
function defined in majutsu-gerrit.el.
Signature
(majutsu-gerrit--account-start-avatar-fetch URL)
Documentation
Start asynchronous fetch of avatar URL.
Fetched bytes are turned into an image and cached; failures are cached as :missing so we do not retry indefinitely.
Source Code
;; Defined in /nix/store/jagqw3nms546pad0gxi5f3wsckk6pji7-emacs-packages-deps/share/emacs/site-lisp/majutsu-gerrit.el
(defun majutsu-gerrit--account-start-avatar-fetch (url)
"Start asynchronous fetch of avatar URL.
Fetched bytes are turned into an image and cached; failures are cached
as `:missing' so we do not retry indefinitely."
(when (and (fboundp 'plz)
(not (gethash url majutsu-gerrit--account-avatar-fetching))
(not (gethash url majutsu-gerrit--account-avatar-image-cache)))
(puthash url t majutsu-gerrit--account-avatar-fetching)
(plz 'get url
:as 'binary
:then (lambda (bytes)
(let ((image (ignore-errors
(create-image bytes nil t
:width majutsu-gerrit-account-avatar-size
:height majutsu-gerrit-account-avatar-size
:ascent 'center))))
(puthash url
(if (majutsu-gerrit--account-avatar-image-valid-p image)
image
:missing)
majutsu-gerrit--account-avatar-image-cache)
(remhash url majutsu-gerrit--account-avatar-fetching)
(majutsu-gerrit--account-avatar-redisplay)))
:else (lambda (_err)
(puthash url :missing majutsu-gerrit--account-avatar-image-cache)
(remhash url majutsu-gerrit--account-avatar-fetching)))))