diff options
-rw-r--r-- | lisp/url/ChangeLog | 12 | ||||
-rw-r--r-- | lisp/url/url-expand.el | 2 | ||||
-rw-r--r-- | lisp/url/url-http.el | 7 | ||||
-rw-r--r-- | lisp/url/url-parse.el | 5 |
4 files changed, 21 insertions, 5 deletions
diff --git a/lisp/url/ChangeLog b/lisp/url/ChangeLog index fb4839358b9..6da1e545be5 100644 --- a/lisp/url/ChangeLog +++ b/lisp/url/ChangeLog @@ -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 diff --git a/lisp/url/url-expand.el b/lisp/url/url-expand.el index 4bf13f4abe3..8a6dc2b87d4 100644 --- a/lisp/url/url-expand.el +++ b/lisp/url/url-expand.el @@ -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)))) diff --git a/lisp/url/url-http.el b/lisp/url/url-http.el index 73d53e08c59..1f705f6a0f9 100644 --- a/lisp/url/url-http.el +++ b/lisp/url/url-http.el @@ -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)))))) diff --git a/lisp/url/url-parse.el b/lisp/url/url-parse.el index 2efabed5cd8..b196fbb1531 100644 --- a/lisp/url/url-parse.el +++ b/lisp/url/url-parse.el @@ -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 |