changeset 4356:aed9e6dceb85

Avoid float rounding errors when checking http protocol version.
author Thomas Arendsen Hein <thomas@intevation.de>
date Thu, 19 Apr 2007 17:52:42 +0200
parents c3c53eb44611
children 3f1b0c0fb4fd bf8319ee3428
files mercurial/httprepo.py
diffstat 1 files changed, 3 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/mercurial/httprepo.py	Mon Apr 16 12:27:49 2007 -0500
+++ b/mercurial/httprepo.py	Thu Apr 19 17:52:42 2007 +0200
@@ -280,11 +280,12 @@
 
         if proto.startswith('application/mercurial-'):
             try:
-                version = float(proto[22:])
+                version = proto.split('-', 1)[1]
+                version_info = tuple([int(n) for n in version.split('.')])
             except ValueError:
                 raise hg.RepoError(_("'%s' sent a broken Content-type "
                                      "header (%s)") % (self._url, proto))
-            if version > 0.1:
+            if version_info > (0, 1):
                 raise hg.RepoError(_("'%s' uses newer protocol %s") %
                                    (self._url, version))