summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--wrappers/python/src/__init__.py14
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,
}