diff options
| author | jwijenbergh <jeroenwijenbergh@protonmail.com> | 2022-07-14 13:39:14 +0200 |
|---|---|---|
| committer | jwijenbergh <jeroenwijenbergh@protonmail.com> | 2022-07-14 13:39:14 +0200 |
| commit | 4067d4d8a476797d0e62b5f5f890cbccf7c8d67c (patch) | |
| tree | ca5b37d96acad625deffa13e5c060936b4dc9b01 /wrappers | |
| parent | e7f0f34827ed8c2f07c16e18e9b1c23311550951 (diff) | |
Python: Fix error parsing for single value return
Diffstat (limited to 'wrappers')
| -rw-r--r-- | wrappers/python/src/__init__.py | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/wrappers/python/src/__init__.py b/wrappers/python/src/__init__.py index a1f8b40..a438ed3 100644 --- a/wrappers/python/src/__init__.py +++ b/wrappers/python/src/__init__.py @@ -132,17 +132,19 @@ def get_ptr_error(ptr: c_void_p) -> Optional[WrappedError]: cause = error_json["cause"] return WrappedError(traceback, cause, ErrorLevel(level)) +def get_error(ptr: c_void_p) -> str: + error = get_ptr_error(ptr) + if not error: + return "" + return error.traceback + def get_data_error(data_error: DataError) -> Tuple[str, str]: data = get_ptr_string(data_error.data) - error = get_ptr_error(data_error.error) - if not error: - error = "" - else: - error = error.traceback + error = get_error(data_error.error) return data, error decode_map = { - c_void_p: get_ptr_error, + c_void_p: get_error, DataError: get_data_error, } |
