changeset 4365: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 bf8319ee3428 3f1b0c0fb4fd
files mercurial/httprepo.py
diffstat 1 files changed, 3 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/mercurial/httprepo.py
+++ b/mercurial/httprepo.py
@@ -280,11 +280,12 @@ class httprepository(remoterepository):
 
         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))