Commit: 2be3ebd15dc518d6fab7324a32f91d3c883c74e5
Author: Campbell Barton
Date:   Wed Jun 3 12:36:32 2015 +1000
Branches: master
https://developer.blender.org/rB2be3ebd15dc518d6fab7324a32f91d3c883c74e5

Correct own recent error printing Python exception

===================================================================

M       source/blender/python/intern/bpy_util.c

===================================================================

diff --git a/source/blender/python/intern/bpy_util.c 
b/source/blender/python/intern/bpy_util.c
index 5846ccd..e4571e7 100644
--- a/source/blender/python/intern/bpy_util.c
+++ b/source/blender/python/intern/bpy_util.c
@@ -85,7 +85,6 @@ short BPy_reports_to_error(ReportList *reports, PyObject 
*exception, const bool
 bool BPy_errors_to_report_ex(ReportList *reports, const bool use_full, const 
bool use_location)
 {
        PyObject *pystring;
-       const char *cstring;
 
        if (!PyErr_Occurred())
                return 1;
@@ -109,13 +108,12 @@ bool BPy_errors_to_report_ex(ReportList *reports, const 
bool use_full, const boo
                return 0;
        }
 
-       cstring = _PyUnicode_AsString(pystring);
-
        if (use_location) {
                const char *filename;
                int lineno;
 
                PyObject *pystring_format;  /* workaround, see below */
+               const char *cstring;
 
                PyC_FileAndNum(&filename, &lineno);
                if (filename == NULL) {
@@ -128,14 +126,15 @@ bool BPy_errors_to_report_ex(ReportList *reports, const 
bool use_full, const boo
                pystring_format = PyUnicode_FromFormat(TIP_("%s\nlocation: 
%s:%d\n"), cstring, filename, lineno);
                cstring = _PyUnicode_AsString(pystring_format);
                BKE_report(reports, RPT_ERROR, cstring);
-               Py_DECREF(pystring_format);  /* workaround */
-#endif
 
                /* not exactly needed. just for testing */
                fprintf(stderr, TIP_("%s\nlocation: %s:%d\n"), cstring, 
filename, lineno);
+
+               Py_DECREF(pystring_format);  /* workaround */
+#endif
        }
        else {
-               BKE_report(reports, RPT_ERROR, cstring);
+               BKE_report(reports, RPT_ERROR, _PyUnicode_AsString(pystring));
        }

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to