mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2024-11-28 07:45:00 +00:00
(package--with-work-buffer-async): Protect macro arguments.
This commit is contained in:
parent
f674de6f08
commit
b32bb3f2f6
@ -3,6 +3,7 @@
|
||||
* emacs-lisp/package.el (package--download-and-read-archives): Add
|
||||
`package-archives' to `package--downloads-in-progress' instead of
|
||||
overwriting it.
|
||||
(package--with-work-buffer-async): Protect macro arguments.
|
||||
|
||||
2015-04-04 Michael Albinus <michael.albinus@gmx.de>
|
||||
|
||||
|
@ -1090,23 +1090,27 @@ function, call it with no arguments (instead of executing BODY),
|
||||
otherwise propagate the error. For description of the other
|
||||
arguments see `package--with-work-buffer'."
|
||||
(declare (indent 3) (debug t))
|
||||
`(if (or (not ,async)
|
||||
(not (string-match-p "\\`https?:" ,location)))
|
||||
(package--with-work-buffer ,location ,file ,@body)
|
||||
(url-retrieve (concat ,location ,file)
|
||||
(lambda (status)
|
||||
(if (eq (car status) :error)
|
||||
(if (functionp ,async)
|
||||
(funcall ,async)
|
||||
(signal (cdar status) (cddr status)))
|
||||
(goto-char (point-min))
|
||||
(unless (search-forward "\n\n" nil 'noerror)
|
||||
(error "Invalid url response"))
|
||||
(delete-region (point-min) (point))
|
||||
,@body)
|
||||
(kill-buffer (current-buffer)))
|
||||
nil
|
||||
'silent)))
|
||||
(macroexp-let2* macroexp-copyable-p
|
||||
((async-1 async)
|
||||
(file-1 file)
|
||||
(location-1 location))
|
||||
`(if (or (not ,async-1)
|
||||
(not (string-match-p "\\`https?:" ,location-1)))
|
||||
(package--with-work-buffer ,location-1 ,file-1 ,@body)
|
||||
(url-retrieve (concat ,location-1 ,file-1)
|
||||
(lambda (status)
|
||||
(if (eq (car status) :error)
|
||||
(if (functionp ,async-1)
|
||||
(funcall ,async-1)
|
||||
(signal (cdar status) (cddr status)))
|
||||
(goto-char (point-min))
|
||||
(unless (search-forward "\n\n" nil 'noerror)
|
||||
(error "Invalid url response"))
|
||||
(delete-region (point-min) (point))
|
||||
,@body)
|
||||
(kill-buffer (current-buffer)))
|
||||
nil
|
||||
'silent))))
|
||||
|
||||
(defun package--check-signature-content (content string &optional sig-file)
|
||||
"Check signature CONTENT against STRING.
|
||||
|
Loading…
Reference in New Issue
Block a user