emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] emacs/lisp/url ChangeLog url-methods.el


From: Chong Yidong
Subject: [Emacs-diffs] emacs/lisp/url ChangeLog url-methods.el
Date: Sat, 12 Sep 2009 00:47:13 +0000

CVSROOT:        /sources/emacs
Module name:    emacs
Changes by:     Chong Yidong <cyd>      09/09/12 00:47:13

Modified files:
        lisp/url       : ChangeLog url-methods.el 

Log message:
        * url-methods.el (url-scheme--registering-proxy): New variable.
        (url-scheme-register-proxy, url-scheme-get-property): Avoid
        calling url-scheme-register-proxy in an infloop (Bug#4191).

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/emacs/lisp/url/ChangeLog?cvsroot=emacs&r1=1.181&r2=1.182
http://cvs.savannah.gnu.org/viewcvs/emacs/lisp/url/url-methods.el?cvsroot=emacs&r1=1.17&r2=1.18

Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/emacs/emacs/lisp/url/ChangeLog,v
retrieving revision 1.181
retrieving revision 1.182
diff -u -b -r1.181 -r1.182
--- ChangeLog   22 Aug 2009 21:53:34 -0000      1.181
+++ ChangeLog   12 Sep 2009 00:47:13 -0000      1.182
@@ -1,3 +1,9 @@
+2009-09-12  Chong Yidong  <address@hidden>
+
+       * url-methods.el (url-scheme--registering-proxy): New variable.
+       (url-scheme-register-proxy, url-scheme-get-property): Avoid
+       calling url-scheme-register-proxy in an infloop (Bug#4191).
+
 2009-08-22  Glenn Morris  <address@hidden>
 
        * url-file.el (url-file-build-filename):

Index: url-methods.el
===================================================================
RCS file: /sources/emacs/emacs/lisp/url/url-methods.el,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -b -r1.17 -r1.18
--- url-methods.el      5 Jan 2009 03:24:19 -0000       1.17
+++ url-methods.el      12 Sep 2009 00:47:13 -0000      1.18
@@ -65,13 +65,16 @@
   "Signal an error for an unknown URL scheme."
   (error "Unkown URL scheme: %s" (url-type url)))
 
+(defvar url-scheme--registering-proxy nil)
+
 (defun url-scheme-register-proxy (scheme)
   "Automatically find a proxy for SCHEME and put it in `url-proxy-services'."
   (let* ((env-var (concat scheme "_proxy"))
         (env-proxy (or (getenv (upcase env-var))
                        (getenv (downcase env-var))))
         (cur-proxy (assoc scheme url-proxy-services))
-        (urlobj nil))
+        (urlobj nil)
+        (url-scheme--registering-proxy t))
 
     ;; If env-proxy is an empty string, treat it as if it were nil
     (when (and (stringp env-proxy)
@@ -124,7 +127,8 @@
          (if (fboundp loader)
              (progn
                ;; Found the module to handle <scheme> URLs
-               (url-scheme-register-proxy scheme)
+               (unless url-scheme--registering-proxy
+                 (url-scheme-register-proxy scheme))
                (setq desc (list 'name scheme
                                 'loader loader))
                (dolist (cell url-scheme-methods)




reply via email to

[Prev in Thread] Current Thread [Next in Thread]