httprepo: give self._url and the netloc to the password manager
authorAlexis S. L. Carvalho <alexis@cecm.usp.br>
Fri, 09 Nov 2007 20:21:35 -0200
changeset 5526 d5b9c74c910e
parent 5525 dcbda0c4c3eb
child 5527 0b3f910dfd17
httprepo: give self._url and the netloc to the password manager This should hide some differences between different python versions.
mercurial/httprepo.py
--- a/mercurial/httprepo.py	Mon Nov 05 20:29:32 2007 +0100
+++ b/mercurial/httprepo.py	Fri Nov 09 20:21:35 2007 -0200
@@ -256,7 +256,11 @@
         if user:
             ui.debug(_('http auth: user %s, password %s\n') %
                      (user, passwd and '*' * len(passwd) or 'not set'))
-            passmgr.add_password(None, host, user, passwd or '')
+            netloc = host
+            if port:
+                netloc += ':' + port
+            # Python < 2.4.3 uses only the netloc to search for a password
+            passmgr.add_password(None, (self._url, netloc), user, passwd or '')
 
         handlers.extend((urllib2.HTTPBasicAuthHandler(passmgr),
                          httpdigestauthhandler(passmgr)))