diff options
author | Chris Liechti <cliechti@gmx.net> | 2015-09-09 17:12:52 +0200 |
---|---|---|
committer | Chris Liechti <cliechti@gmx.net> | 2015-09-09 17:12:52 +0200 |
commit | 4a790ad197763f17dd649e37fb9c1e752a3be21f (patch) | |
tree | a822b627cfb65500c33858ed40e0d0d34e75d839 /serial/serialutil.py | |
parent | bc119fd238b5bf34c900161b981d579d8f7e61d4 (diff) | |
download | pyserial-git-4a790ad197763f17dd649e37fb9c1e752a3be21f.tar.gz |
raise a TypeError when trying to write unicode instead of bytes
Diffstat (limited to 'serial/serialutil.py')
-rw-r--r-- | serial/serialutil.py | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/serial/serialutil.py b/serial/serialutil.py index d0a196e..1ccfabb 100644 --- a/serial/serialutil.py +++ b/serial/serialutil.py @@ -21,6 +21,11 @@ except (NameError, AttributeError): class memoryview(object): pass +try: + unicode +except (NameError, AttributeError): + unicode = str # for Python 3 + # "for byte in data" fails for python3 as it returns ints instead of bytes def iterbytes(b): @@ -47,6 +52,8 @@ def to_bytes(seq): return bytes(seq) elif isinstance(seq, memoryview): return seq.tobytes() + elif isinstance(seq, unicode): + raise TypeError('unicode strings are not supported, please encode to bytes: %r' % (seq,)) else: b = bytearray() for item in seq: |