Two fixes for the URL library (tiny change).

* url-expand.el (url-default-expander): Don't calculate a default
url port before checking url-type.

* url-http.el (url-http-end-of-document-sentinel): Bind relevant
url-request-* variables around the call to url-http.

Fixes: debbugs:11469 debbugs:12374
This commit is contained in:
Takafumi Arakaki 2012-12-22 10:59:08 +08:00 committed by Chong Yidong
parent c545e313b5
commit 33d359875a
4 changed files with 21 additions and 5 deletions

View file

@ -1,3 +1,15 @@
2012-12-22 Takafumi Arakaki <aka.tkf@gmail.com> (tiny change)
* url-http.el (url-http-end-of-document-sentinel): Bind relevant
url-request-* variables around the call to url-http (Bug#11469).
* url-expand.el (url-default-expander): Don't calculate a default
url port before checking url-type (Bug#12374).
2012-12-22 Chong Yidong <cyd@gnu.org>
* url-parse.el (url-port): Doc fix.
2012-12-03 Chong Yidong <cyd@gnu.org>
* url-misc.el (url-do-terminal-emulator): Use make-term instead of

View file

@ -112,7 +112,7 @@ path components followed by `..' are removed, along with the `..' itself."
;; Well, they told us the scheme, let's just go with it.
nil
(setf (url-type urlobj) (or (url-type urlobj) (url-type defobj)))
(setf (url-port urlobj) (or (url-port urlobj)
(setf (url-port urlobj) (or (url-portspec urlobj)
(and (string= (url-type urlobj)
(url-type defobj))
(url-port defobj))))

View file

@ -890,8 +890,11 @@ should be shown to the user."
(url-http-activate-callback)
;; Call `url-http' again if our connection expired.
(erase-buffer)
(url-http url-current-object url-callback-function
url-callback-arguments (current-buffer))))
(let ((url-request-method url-http-method)
(url-request-extra-headers url-http-extra-headers)
(url-request-data url-http-data))
(url-http url-current-object url-callback-function
url-callback-arguments (current-buffer)))))
((url-http-parse-headers)
(url-http-activate-callback))))))

View file

@ -39,13 +39,14 @@
silent (use-cookies t))
(defsubst url-port (urlobj)
"Return the port number for the URL specified by URLOBJ."
"Return the port number for the URL specified by URLOBJ.
If the port spec is nil (i.e. URLOBJ specifies no port number),
return the default port number for URLOBJ's scheme."
(declare (gv-setter (lambda (port) `(setf (url-portspec ,urlobj) ,port))))
(or (url-portspec urlobj)
(if (url-type urlobj)
(url-scheme-get-property (url-type urlobj) 'default-port))))
(defun url-path-and-query (urlobj)
"Return the path and query components of URLOBJ.
These two components are stored together in the FILENAME slot of