From 4067d4d8a476797d0e62b5f5f890cbccf7c8d67c Mon Sep 17 00:00:00 2001 From: jwijenbergh Date: Thu, 14 Jul 2022 13:39:14 +0200 Subject: Python: Fix error parsing for single value return --- wrappers/python/src/__init__.py | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) (limited to 'wrappers/python/src/__init__.py') 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, } -- cgit v1.2.3