mirror of
git://git.sv.gnu.org/emacs.git
synced 2025-12-06 06:20:55 -08:00
* lisp/url/url-queue.el: Better compatibility with 'url-retrieve'
(url-queue): New slots to hold request related variables. (url-queue-retrieve): Capture the request related variables. (url-queue-start-retrieve): Let bind the request related variables. (Bug#78928) * etc/NEWS: Announce changes.
This commit is contained in:
parent
a2d71cecae
commit
bd9d8c20f7
2 changed files with 28 additions and 11 deletions
9
etc/NEWS
9
etc/NEWS
|
|
@ -1402,6 +1402,15 @@ HTML 'doctype' declaration to have context-type "text/html".
|
||||||
When there is no EWW buffer, 'eww-switch-to-buffer' falls back to
|
When there is no EWW buffer, 'eww-switch-to-buffer' falls back to
|
||||||
calling 'eww'.
|
calling 'eww'.
|
||||||
|
|
||||||
|
** Url Queue
|
||||||
|
|
||||||
|
---
|
||||||
|
*** 'url-queue-retrieve' now makes use of some url request variables
|
||||||
|
The variables 'url-request-data', 'url-request-method', and
|
||||||
|
'url-request-extra-headers' can now be bound around a call to
|
||||||
|
'url-queue-retrieve'. Binding them has the same effect as for
|
||||||
|
'url-retrieve'.
|
||||||
|
|
||||||
** CC mode
|
** CC mode
|
||||||
|
|
||||||
+++
|
+++
|
||||||
|
|
|
||||||
|
|
@ -53,7 +53,8 @@
|
||||||
(cl-defstruct url-queue
|
(cl-defstruct url-queue
|
||||||
url callback cbargs silentp
|
url callback cbargs silentp
|
||||||
buffer start-time pre-triggered
|
buffer start-time pre-triggered
|
||||||
inhibit-cookiesp context-buffer)
|
inhibit-cookiesp context-buffer
|
||||||
|
request-data request-method request-extra-headers)
|
||||||
|
|
||||||
;;;###autoload
|
;;;###autoload
|
||||||
(defun url-queue-retrieve (url callback &optional cbargs silent inhibit-cookies)
|
(defun url-queue-retrieve (url callback &optional cbargs silent inhibit-cookies)
|
||||||
|
|
@ -64,12 +65,16 @@ but with limits on the degree of parallelism. The variable
|
||||||
The variable `url-queue-timeout' sets a timeout."
|
The variable `url-queue-timeout' sets a timeout."
|
||||||
(setq url-queue
|
(setq url-queue
|
||||||
(append url-queue
|
(append url-queue
|
||||||
(list (make-url-queue :url url
|
(list (make-url-queue
|
||||||
|
:url url
|
||||||
:callback callback
|
:callback callback
|
||||||
:cbargs cbargs
|
:cbargs cbargs
|
||||||
:silentp silent
|
:silentp silent
|
||||||
:inhibit-cookiesp inhibit-cookies
|
:inhibit-cookiesp inhibit-cookies
|
||||||
:context-buffer (current-buffer)))))
|
:context-buffer (current-buffer)
|
||||||
|
:request-data url-request-data
|
||||||
|
:request-method url-request-method
|
||||||
|
:request-extra-headers url-request-extra-headers))))
|
||||||
(url-queue-setup-runners))
|
(url-queue-setup-runners))
|
||||||
|
|
||||||
;; To ensure asynch behavior, we start the required number of queue
|
;; To ensure asynch behavior, we start the required number of queue
|
||||||
|
|
@ -161,7 +166,10 @@ The variable `url-queue-timeout' sets a timeout."
|
||||||
(url-queue-context-buffer job)
|
(url-queue-context-buffer job)
|
||||||
(current-buffer))
|
(current-buffer))
|
||||||
(let ((url-request-noninteractive t)
|
(let ((url-request-noninteractive t)
|
||||||
(url-allow-non-local-files t))
|
(url-allow-non-local-files t)
|
||||||
|
(url-request-data (url-queue-request-data job))
|
||||||
|
(url-request-method (url-queue-request-method job))
|
||||||
|
(url-request-extra-headers (url-queue-request-extra-headers job)))
|
||||||
(url-retrieve (url-queue-url job)
|
(url-retrieve (url-queue-url job)
|
||||||
#'url-queue-callback-function (list job)
|
#'url-queue-callback-function (list job)
|
||||||
(url-queue-silentp job)
|
(url-queue-silentp job)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue