summaryrefslogtreecommitdiff
path: root/paste/exceptions/serial_number_generator.py
diff options
context:
space:
mode:
Diffstat (limited to 'paste/exceptions/serial_number_generator.py')
-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