diff options
Diffstat (limited to 'pymemcache/client/base.py')
-rw-r--r-- | pymemcache/client/base.py | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/pymemcache/client/base.py b/pymemcache/client/base.py index 94e9a57..64c4580 100644 --- a/pymemcache/client/base.py +++ b/pymemcache/client/base.py @@ -97,19 +97,21 @@ def _check_key(key, allow_unicode_keys, key_prefix=b''): raise MemcacheIllegalInputError("Key is too long: '%r'" % (key,)) for c in key: - if c == b' ': + if isinstance(c, VALID_STRING_TYPES): + c = ord(c) + if c == ord(b' '): raise MemcacheIllegalInputError( "Key contains space: '%r'" % (key,) ) - elif c == b'\n': + elif c == ord(b'\n'): raise MemcacheIllegalInputError( "Key contains newline: '%r'" % (key,) ) - elif c == b'\00': + elif c == ord(b'\00'): raise MemcacheIllegalInputError( "Key contains null character: '%r'" % (key,) ) - elif c == b'\r': + elif c == ord(b'\r'): raise MemcacheIllegalInputError( "Key contains carriage return: '%r'" % (key,) ) |