Make NiceSort treat integers well
authorHrvoje Ribicic <riba@google.com>
Tue, 25 Feb 2014 16:25:29 +0000 (16:25 +0000)
committerHrvoje Ribicic <riba@google.com>
Wed, 26 Feb 2014 10:22:50 +0000 (11:22 +0100)
NiceSort is invoked on arrays that may contain strings, but in other
situations can contain ints as well. As this surprisingly makes sense,
add a tiny modification to make NiceSort work in these conditions.

Signed-off-by: Hrvoje Ribicic <riba@google.com>
Reviewed-by: Jose A. Lopes <jabolopes@google.com>

lib/utils/algo.py

index b436f5a..745a946 100644 (file)
@@ -110,7 +110,7 @@ def NiceSortKey(value):
 
   """
   return [_NiceSortTryInt(grp)
-          for grp in _SORTER_RE.match(value).groups()]
+          for grp in _SORTER_RE.match(str(value)).groups()]
 
 
 def NiceSort(values, key=None):