diff options
author | Campbell Barton <ideasman42@gmail.com> | 2019-01-17 00:43:57 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2019-01-17 00:43:57 +0300 |
commit | 9bfc9d799e08b467e94c3d750a9c8b2909a72e3e (patch) | |
tree | c7ef7cddf938152574525d5cd2a535b33e0dee65 /source/blender/python | |
parent | debb68024e0a7c5a29fa709e939cdb1a05f95f05 (diff) |
PyAPI: Avoid redundant prefix for PyC_Err_Format_Prefix
Only show the exception value type when it's not a string.
Diffstat (limited to 'source/blender/python')
-rw-r--r-- | source/blender/python/generic/py_capi_utils.c | 23 |
1 files changed, 15 insertions, 8 deletions
diff --git a/source/blender/python/generic/py_capi_utils.c b/source/blender/python/generic/py_capi_utils.c index 567738e6be2..d158c92baae 100644 --- a/source/blender/python/generic/py_capi_utils.c +++ b/source/blender/python/generic/py_capi_utils.c @@ -436,17 +436,24 @@ PyObject *PyC_Err_Format_Prefix(PyObject *exception_type_prefix, const char *for if (PyErr_Occurred()) { PyObject *error_type, *error_value, *error_traceback; PyErr_Fetch(&error_type, &error_value, &error_traceback); - PyErr_Format(exception_type_prefix, - "%S, %.200s(%S)", - error_value_prefix, - Py_TYPE(error_value)->tp_name, - error_value - ); + + if (PyUnicode_Check(error_value)) { + PyErr_Format(exception_type_prefix, + "%S, %S", + error_value_prefix, + error_value); + } + else { + PyErr_Format(exception_type_prefix, + "%S, %.200s(%S)", + error_value_prefix, + Py_TYPE(error_value)->tp_name, + error_value); + } } else { PyErr_SetObject(exception_type_prefix, - error_value_prefix - ); + error_value_prefix); } Py_XDECREF(error_value_prefix); |