catacomb/__init__.py (BaseRat): Make comparisons actually work.
[catacomb-python] / catacomb / __init__.py
index e283744..c0cb1ab 100644 (file)
@@ -46,7 +46,7 @@ def _fixname(name):
   name = name.replace('-', '_')
 
   ## But slashes might become underscores or just vanish.
-  if name.startswith('salsa20'): name = name.translate(None, '/')
+  if name.startswith('salsa20'): name = name.replace('/', '')
   else: name = name.replace('/', '_')
 
   ## Done.
@@ -320,7 +320,7 @@ class BaseRat (object):
     return type(me)(me._d*n, me._n*d)
   def __cmp__(me, you):
     n, d = _split_rat(you)
-    return type(me)(me._n*d, n*me._d)
+    return cmp(me._n*d, n*me._d)
   def __rcmp__(me, you):
     n, d = _split_rat(you)
     return cmp(n*me._d, me._n*d)