Mercurial > hg
changeset 11415:a1e575b48563
http push: break infinite recursion on failure with Python 2.6.5 (issue2179)
Python 2.6.5 will keep resetting the retry count on redirects, for example when
the server returns 401 on failing auth (like google code currently does). We
stop the endless recursion by not resetting the count.
http://bugs.python.org/issue3819 introduced the regression with Python 2.6.5.
http://bugs.python.org/issue8797 discusses a fix which might make it to 2.6.6
and 2.7.0.
author | Mads Kiilerich <mads@kiilerich.com> |
---|---|
date | Wed, 16 Jun 2010 22:54:58 +0200 |
parents | 0fa4474bdc2f |
children | caf10970950e |
files | mercurial/url.py |
diffstat | 1 files changed, 7 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/url.py Sun Jun 20 01:20:12 2010 +0900 +++ b/mercurial/url.py Wed Jun 16 22:54:58 2010 +0200 @@ -556,6 +556,13 @@ return raise + # Python 2.6.5 will keep resetting the retry count on redirects, for + # example when the server returns 401 on failing auth (like google code + # currently does). We stop the endless recursion by not resetting the + # count. + def reset_retry_count(self): + pass + def getauthinfo(path): scheme, netloc, urlpath, query, frag = urlparse.urlsplit(path) if not urlpath: