From b2fc30061e2785ac13156f21c348d9e7a39f6169 Mon Sep 17 00:00:00 2001 From: marcelo Date: Fri, 27 Nov 2020 14:33:13 -0300 Subject: [PATCH 1/2] Fix error Concat str + bytes --- xbee/backend/base.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/xbee/backend/base.py b/xbee/backend/base.py index b44998e..1496b92 100644 --- a/xbee/backend/base.py +++ b/xbee/backend/base.py @@ -115,6 +115,10 @@ def _build_command(self, cmd, **kwargs): if field['len'] is not None: # Was a default value specified? default_value = field['default'] + + if isinstance(default_value, str): + default_value = stringToBytes(default_value) + if default_value: # If so, use it data = default_value From e2f5f54d19688d2fa3d9300711381559aba89bab Mon Sep 17 00:00:00 2001 From: marcelo Date: Mon, 30 Nov 2020 10:22:50 -0300 Subject: [PATCH 2/2] fix the error when the default value is a non-ascII caracter --- xbee/backend/base.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/xbee/backend/base.py b/xbee/backend/base.py index 1496b92..4963212 100644 --- a/xbee/backend/base.py +++ b/xbee/backend/base.py @@ -115,9 +115,15 @@ def _build_command(self, cmd, **kwargs): if field['len'] is not None: # Was a default value specified? default_value = field['default'] - + if isinstance(default_value, str): - default_value = stringToBytes(default_value) + try: + default_value = stringToBytes(default_value) + except Exception as e: + default_aux = default_value + default_value = b'' + for i in range(len(default_aux)): + default_value = default_value+ b'\x00' if default_value: # If so, use it