summaryrefslogtreecommitdiff
path: root/paste
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
commitaadcd3e4f4ac5c8251db1a7899d96c8ee279e04d (patch)
treef5ddfbc43d7466a96eb3905fe8d307d414c65a44 /paste
parent39758a4b3b432f7913c5941a0c0ea2a6c8fa300e (diff)
downloadpaste-aadcd3e4f4ac5c8251db1a7899d96c8ee279e04d.tar.gz
Fix hash_identifier() on Python 3
Fix paste.exceptions.serial_number_generator.hash_identifier()
Diffstat (limited to 'paste')
-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