changeset 69296:64b44b996827

(url-http-find-free-connection): Don't kill the process when killing the temp buffer. (url-http-symbol-value-in-buffer): Massage to make it clear to the byte-compiler that the function is defined.
author Stefan Monnier <monnier@iro.umontreal.ca>
date Mon, 06 Mar 2006 03:17:00 +0000
parents 72ea16b87901
children c379d6c262b1
files lisp/url/ChangeLog lisp/url/url-http.el
diffstat 2 files changed, 18 insertions(+), 8 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/url/ChangeLog	Mon Mar 06 02:22:35 2006 +0000
+++ b/lisp/url/ChangeLog	Mon Mar 06 03:17:00 2006 +0000
@@ -1,3 +1,10 @@
+2006-03-05  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+	* url-http.el (url-http-find-free-connection): Don't kill the process
+	when killing the temp buffer.
+	(url-http-symbol-value-in-buffer): Massage to make it clear to the
+	byte-compiler that the function is defined.
+
 2006-02-20  Stefan Monnier  <monnier@iro.umontreal.ca>
 
 	* url.el (url-redirect-buffer): New var.
--- a/lisp/url/url-http.el	Mon Mar 06 02:22:35 2006 +0000
+++ b/lisp/url/url-http.el	Mon Mar 06 03:17:00 2006 +0000
@@ -121,7 +121,10 @@
          (let ((buf (generate-new-buffer " *url-http-temp*")))
            ;; `url-open-stream' needs a buffer in which to do things
            ;; like authentication.  But we use another buffer afterwards.
-           (unwind-protect (url-open-stream host buf host port)
+           (unwind-protect
+               (let ((proc (url-open-stream host buf host port)))
+                 ;; Drop the temp buffer link before killing the buffer.
+                 (set-process-buffer proc nil))
              (kill-buffer buf)))))))
 
 ;; Building an HTTP request
@@ -1109,15 +1112,15 @@
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 ;;; file-name-handler stuff from here on out
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-(if (not (fboundp 'symbol-value-in-buffer))
-    (defun url-http-symbol-value-in-buffer (symbol buffer
-						   &optional unbound-value)
+(defalias 'url-http-symbol-value-in-buffer
+  (if (fboundp 'symbol-value-in-buffer)
+      'symbol-value-in-buffer
+    (lambda (symbol buffer &optional unbound-value)
       "Return the value of SYMBOL in BUFFER, or UNBOUND-VALUE if it is unbound."
       (with-current-buffer buffer
-	(if (not (boundp symbol))
-	    unbound-value
-	  (symbol-value symbol))))
-  (defalias 'url-http-symbol-value-in-buffer 'symbol-value-in-buffer))
+        (if (not (boundp symbol))
+            unbound-value
+          (symbol-value symbol))))))
 
 (defun url-http-head (url)
   (let ((url-request-method "HEAD")