[Bf-blender-cvs] [206b67b] framebuffer: Remove redundant args to PyExc_Format
Campbell Barton
noreply at git.blender.org
Mon Oct 19 17:03:46 CEST 2015
Commit: 206b67b31a311867bd222477bfa28c0c73ff9dbb
Author: Campbell Barton
Date: Tue Oct 20 01:56:56 2015 +1100
Branches: framebuffer
https://developer.blender.org/rB206b67b31a311867bd222477bfa28c0c73ff9dbb
Remove redundant args to PyExc_Format
Also make error handling more compact.
and don't overwrite errors from PyC_RNA_AsPointer.
===================================================================
M source/blender/python/intern/gpu_offscreen.c
===================================================================
diff --git a/source/blender/python/intern/gpu_offscreen.c b/source/blender/python/intern/gpu_offscreen.c
index 7fb0bda..b7e532f 100644
--- a/source/blender/python/intern/gpu_offscreen.c
+++ b/source/blender/python/intern/gpu_offscreen.c
@@ -69,7 +69,7 @@ static int bpy_gpu_offscreen_valid_check(PyGPUOffScreen *py_gpu_ofs, const char
if (UNLIKELY(py_gpu_ofs->ofs == NULL)) {
PyErr_Format(PyExc_ReferenceError,
"%.200s: GPU offscreen was freed, no further access is valid",
- error_prefix, Py_TYPE(py_gpu_ofs)->tp_name);
+ error_prefix);
return -1;
}
return 0;
@@ -174,7 +174,7 @@ static int pygpu_offscreen_check_matrix(PyObject *o, void *p)
if (!MatrixObject_Check(pymat)) {
PyErr_Format(PyExc_TypeError,
- "matrix is not in a valid format (e.g., mathutils.Matrix)",
+ "expected a mathutils.Matrix, not a %.200s",
Py_TYPE(o)->tp_name);
return 0;
}
@@ -186,9 +186,7 @@ static int pygpu_offscreen_check_matrix(PyObject *o, void *p)
if ((pymat->num_col != 4) ||
(pymat->num_row != 4))
{
- PyErr_Format(PyExc_TypeError,
- "matrix must have 4 rows and 4 columns",
- Py_TYPE(o)->tp_name);
+ PyErr_SetString(PyExc_ValueError, "matrix must be 4x4");
return 0;
}
@@ -225,29 +223,14 @@ static PyObject *pygpu_offscreen_draw_view3d(PyGPUOffScreen *self, PyObject *arg
args, kwds, "OOOO&O&:draw_view3d", (char **)(kwlist),
&py_scene, &py_region, &py_view3d,
pygpu_offscreen_check_matrix, &py_mat_projection,
- pygpu_offscreen_check_matrix, &py_mat_modelview))
+ pygpu_offscreen_check_matrix, &py_mat_modelview) ||
+ (!(scene = PyC_RNA_AsPointer(py_scene, "Scene")) ||
+ !(ar = PyC_RNA_AsPointer(py_region, "ARegion")) ||
+ !(v3d = PyC_RNA_AsPointer(py_view3d, "View3D"))))
{
return NULL;
}
- scene = (Scene *)PyC_RNA_AsPointer(py_scene, "Scene");
- if (scene == NULL) {
- PyErr_SetString(PyExc_SystemError, "draw_view3d: No valid scene");
- return NULL;
- }
-
- ar = (ARegion *)PyC_RNA_AsPointer(py_region, "ARegion");
- if (ar == NULL) {
- PyErr_SetString(PyExc_SystemError, "draw_view3d: No valid region");
- return NULL;
- }
-
- v3d = (View3D *)PyC_RNA_AsPointer(py_view3d, "View3D");
- if (v3d == NULL) {
- PyErr_SetString(PyExc_SystemError, "draw_view3d: No valid 3d view");
- return NULL;
- }
-
fx = GPU_fx_compositor_create();
fx_settings = v3d->fx_settings; /* full copy */
@@ -419,7 +402,7 @@ static PyObject *pygpu_offscreen_new(PyObject *UNUSED(self), PyObject *args, PyO
ofs = GPU_offscreen_create(width, height, samples, err_out);
if (ofs == NULL) {
- PyErr_Format(PyExc_Exception,
+ PyErr_Format(PyExc_RuntimeError,
"gpu.offscreen.new(...) failed with '%s'",
err_out[0] ? err_out : "unknown error");
return NULL;
More information about the Bf-blender-cvs
mailing list