summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVictor Stinner <victor.stinner@gmail.com>2015-04-22 03:24:58 +0200
committerVictor Stinner <victor.stinner@gmail.com>2015-04-22 03:24:58 +0200
commite1b6b53506a59aea9540f8906c666beb563ff3eb (patch)
treef5ddfbc43d7466a96eb3905fe8d307d414c65a44
parentcf959fa2e95a4e6b265839f6f62c00b57b456e6c (diff)
downloadpaste-git-e1b6b53506a59aea9540f8906c666beb563ff3eb.tar.gz
Fix hash_identifier() on Python 3
Fix paste.exceptions.serial_number_generator.hash_identifier()
-rw-r--r--paste/exceptions/serial_number_generator.py6
1 files changed, 5 insertions, 1 deletions
diff --git a/paste/exceptions/serial_number_generator.py b/paste/exceptions/serial_number_generator.py
index 5315b7c..3f80107 100644
--- a/paste/exceptions/serial_number_generator.py
+++ b/paste/exceptions/serial_number_generator.py
@@ -63,7 +63,11 @@ def hash_identifier(s, length, pad=True, hasher=md5, prefix='',
"length (you gave %s)" % length)
if isinstance(s, six.text_type):
s = s.encode('utf-8')
- h = hasher(six.binary_type(s))
+ elif not isinstance(s, six.binary_type):
+ s = str(s)
+ if six.PY3:
+ s = s.encode('utf-8')
+ h = hasher(s)
bin_hash = h.digest()
modulo = base ** length
number = 0