[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [38388] trunk/blender/source/blender/ python/generic: many mathutils exception types were wrong, went over all exceptions in mathutils and double checked the're correct.
Campbell Barton
ideasman42 at gmail.com
Thu Jul 14 11:54:04 CEST 2011
Revision: 38388
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=38388
Author: campbellbarton
Date: 2011-07-14 09:54:03 +0000 (Thu, 14 Jul 2011)
Log Message:
-----------
many mathutils exception types were wrong, went over all exceptions in mathutils and double checked the're correct.
Modified Paths:
--------------
trunk/blender/source/blender/python/generic/mathutils.c
trunk/blender/source/blender/python/generic/mathutils_Color.c
trunk/blender/source/blender/python/generic/mathutils_Euler.c
trunk/blender/source/blender/python/generic/mathutils_Matrix.c
trunk/blender/source/blender/python/generic/mathutils_Quaternion.c
trunk/blender/source/blender/python/generic/mathutils_Vector.c
trunk/blender/source/blender/python/generic/mathutils_geometry.c
Modified: trunk/blender/source/blender/python/generic/mathutils.c
===================================================================
--- trunk/blender/source/blender/python/generic/mathutils.c 2011-07-14 08:24:15 UTC (rev 38387)
+++ trunk/blender/source/blender/python/generic/mathutils.c 2011-07-14 09:54:03 UTC (rev 38388)
@@ -75,7 +75,7 @@
do {
i--;
if(((array[i]= PyFloat_AsDouble((item= PySequence_Fast_GET_ITEM(value_fast, i)))) == -1.0f) && PyErr_Occurred()) {
- PyErr_Format(PyExc_ValueError,
+ PyErr_Format(PyExc_TypeError,
"%.200s: sequence index %d expected a number, "
"found '%.200s' type, ",
error_prefix, i, Py_TYPE(item)->tp_name);
Modified: trunk/blender/source/blender/python/generic/mathutils_Color.c
===================================================================
--- trunk/blender/source/blender/python/generic/mathutils_Color.c 2011-07-14 08:24:15 UTC (rev 38387)
+++ trunk/blender/source/blender/python/generic/mathutils_Color.c 2011-07-14 09:54:03 UTC (rev 38388)
@@ -259,7 +259,7 @@
return -1;
if(size != (end - begin)){
- PyErr_SetString(PyExc_TypeError,
+ PyErr_SetString(PyExc_ValueError,
"color[begin:end] = []: "
"size mismatch in slice assignment");
return -1;
@@ -296,7 +296,7 @@
return Color_slice(self, start, stop);
}
else {
- PyErr_SetString(PyExc_TypeError,
+ PyErr_SetString(PyExc_IndexError,
"slice steps not supported with color");
return NULL;
}
@@ -328,7 +328,7 @@
if (step == 1)
return Color_ass_slice(self, start, stop, value);
else {
- PyErr_SetString(PyExc_TypeError,
+ PyErr_SetString(PyExc_IndexError,
"slice steps not supported with color");
return -1;
}
@@ -371,7 +371,7 @@
float col[COLOR_SIZE];
if (!ColorObject_Check(v1) || !ColorObject_Check(v2)) {
- PyErr_SetString(PyExc_AttributeError,
+ PyErr_SetString(PyExc_TypeError,
"Color addition: "
"arguments not valid for this operation");
return NULL;
@@ -393,7 +393,7 @@
ColorObject *color1 = NULL, *color2 = NULL;
if (!ColorObject_Check(v1) || !ColorObject_Check(v2)) {
- PyErr_SetString(PyExc_AttributeError,
+ PyErr_SetString(PyExc_TypeError,
"Color addition: "
"arguments not valid for this operation");
return NULL;
@@ -418,7 +418,7 @@
float col[COLOR_SIZE];
if (!ColorObject_Check(v1) || !ColorObject_Check(v2)) {
- PyErr_SetString(PyExc_AttributeError,
+ PyErr_SetString(PyExc_TypeError,
"Color subtraction: "
"arguments not valid for this operation");
return NULL;
@@ -440,7 +440,7 @@
ColorObject *color1= NULL, *color2= NULL;
if (!ColorObject_Check(v1) || !ColorObject_Check(v2)) {
- PyErr_SetString(PyExc_AttributeError,
+ PyErr_SetString(PyExc_TypeError,
"Color subtraction: "
"arguments not valid for this operation");
return NULL;
@@ -555,7 +555,9 @@
mul_vn_fl(color->col, COLOR_SIZE, scalar);
}
else {
- PyErr_SetString(PyExc_TypeError, "Color multiplication: arguments not acceptable for this operation");
+ PyErr_SetString(PyExc_TypeError,
+ "Color multiplication: "
+ "arguments not acceptable for this operation");
return NULL;
}
@@ -846,9 +848,7 @@
self->wrapped = Py_NEW;
}
else {
- PyErr_SetString(PyExc_RuntimeError,
- "Color(): invalid type, internal error");
- return NULL;
+ Py_FatalError("Color(): invalid type!");
}
}
Modified: trunk/blender/source/blender/python/generic/mathutils_Euler.c
===================================================================
--- trunk/blender/source/blender/python/generic/mathutils_Euler.c 2011-07-14 08:24:15 UTC (rev 38387)
+++ trunk/blender/source/blender/python/generic/mathutils_Euler.c 2011-07-14 09:54:03 UTC (rev 38388)
@@ -99,7 +99,7 @@
}
}
- PyErr_Format(PyExc_TypeError,
+ PyErr_Format(PyExc_ValueError,
"%s: invalid euler order '%s'",
error_prefix, str);
return -1;
@@ -209,7 +209,7 @@
return NULL;
}
if(!(ELEM3(*axis, 'X', 'Y', 'Z') && axis[1]=='\0')){
- PyErr_SetString(PyExc_TypeError, "euler.rotate(): "
+ PyErr_SetString(PyExc_ValueError, "euler.rotate(): "
"expected axis to be 'X', 'Y' or 'Z'");
return NULL;
}
@@ -449,7 +449,7 @@
return -1;
if(size != (end - begin)){
- PyErr_SetString(PyExc_TypeError,
+ PyErr_SetString(PyExc_ValueError,
"euler[begin:end] = []: "
"size mismatch in slice assignment");
return -1;
@@ -486,7 +486,7 @@
return Euler_slice(self, start, stop);
}
else {
- PyErr_SetString(PyExc_TypeError,
+ PyErr_SetString(PyExc_IndexError,
"slice steps not supported with eulers");
return NULL;
}
@@ -519,7 +519,7 @@
if (step == 1)
return Euler_ass_slice(self, start, stop, value);
else {
- PyErr_SetString(PyExc_TypeError,
+ PyErr_SetString(PyExc_IndexError,
"slice steps not supported with euler");
return -1;
}
@@ -701,9 +701,7 @@
self->wrapped = Py_NEW;
}
else {
- PyErr_SetString(PyExc_RuntimeError,
- "Euler(): invalid type, internal error");
- return NULL;
+ Py_FatalError("Euler(): invalid type!");
}
self->order= order;
Modified: trunk/blender/source/blender/python/generic/mathutils_Matrix.c
===================================================================
--- trunk/blender/source/blender/python/generic/mathutils_Matrix.c 2011-07-14 08:24:15 UTC (rev 38387)
+++ trunk/blender/source/blender/python/generic/mathutils_Matrix.c 2011-07-14 09:54:03 UTC (rev 38388)
@@ -225,7 +225,7 @@
if(vec && PyUnicode_Check(vec)) {
axis= _PyUnicode_AsString((PyObject *)vec);
if(axis==NULL || axis[0]=='\0' || axis[1]!='\0' || axis[0] < 'X' || axis[0] > 'Z') {
- PyErr_SetString(PyExc_TypeError,
+ PyErr_SetString(PyExc_ValueError,
"mathutils.RotationMatrix(): "
"3rd argument axis value must be a 3D vector "
"or a string in 'X', 'Y', 'Z'");
@@ -240,19 +240,19 @@
angle= angle_wrap_rad(angle);
if(matSize != 2 && matSize != 3 && matSize != 4) {
- PyErr_SetString(PyExc_AttributeError,
+ PyErr_SetString(PyExc_ValueError,
"mathutils.RotationMatrix(): "
"can only return a 2x2 3x3 or 4x4 matrix");
return NULL;
}
if(matSize == 2 && (vec != NULL)) {
- PyErr_SetString(PyExc_AttributeError,
+ PyErr_SetString(PyExc_ValueError,
"mathutils.RotationMatrix(): "
"cannot create a 2x2 rotation matrix around arbitrary axis");
return NULL;
}
if((matSize == 3 || matSize == 4) && (axis == NULL) && (vec == NULL)) {
- PyErr_SetString(PyExc_AttributeError,
+ PyErr_SetString(PyExc_ValueError,
"mathutils.RotationMatrix(): "
"axis of rotation for 3d and 4d matrices is required");
return NULL;
@@ -300,7 +300,7 @@
}
else {
/* should never get here */
- PyErr_SetString(PyExc_AttributeError,
+ PyErr_SetString(PyExc_ValueError,
"mathutils.RotationMatrix(): unknown error");
return NULL;
}
@@ -365,7 +365,7 @@
return NULL;
}
if(matSize != 2 && matSize != 3 && matSize != 4) {
- PyErr_SetString(PyExc_AttributeError,
+ PyErr_SetString(PyExc_ValueError,
"Matrix.Scale(): "
"can only return a 2x2 3x3 or 4x4 matrix");
return NULL;
@@ -451,7 +451,7 @@
return NULL;
}
if(matSize != 2 && matSize != 3 && matSize != 4) {
- PyErr_SetString(PyExc_AttributeError,
+ PyErr_SetString(PyExc_ValueError,
"mathutils.Matrix.OrthoProjection(): "
"can only return a 2x2 3x3 or 4x4 matrix");
return NULL;
@@ -568,7 +568,7 @@
return NULL;
}
if(matSize != 2 && matSize != 3 && matSize != 4) {
- PyErr_SetString(PyExc_AttributeError,
+ PyErr_SetString(PyExc_ValueError,
"mathutils.Matrix.Shear(): "
"can only return a 2x2 3x3 or 4x4 matrix");
return NULL;
@@ -578,7 +578,7 @@
float const factor= PyFloat_AsDouble(fac);
if(factor==-1.0f && PyErr_Occurred()) {
- PyErr_SetString(PyExc_AttributeError,
+ PyErr_SetString(PyExc_TypeError,
"mathutils.Matrix.Shear(): "
"the factor to be a float");
return NULL;
@@ -595,7 +595,7 @@
mat[1] = factor;
}
else {
- PyErr_SetString(PyExc_AttributeError,
+ PyErr_SetString(PyExc_ValueError,
"Matrix.Shear(): "
"expected: X, Y or wrong matrix size for shearing plane");
return NULL;
@@ -627,7 +627,7 @@
mat[2] = factor[1];
}
else {
- PyErr_SetString(PyExc_AttributeError,
+ PyErr_SetString(PyExc_ValueError,
"mathutils.Matrix.Shear(): "
"expected: X, Y, XY, XZ, YZ");
return NULL;
@@ -686,7 +686,7 @@
/*must be 3-4 cols, 3-4 rows, square matrix*/
if((self->col_size < 3) || (self->row_size < 3) || (self->col_size != self->row_size)) {
- PyErr_SetString(PyExc_AttributeError,
+ PyErr_SetString(PyExc_ValueError,
"matrix.to_quat(): "
"inappropriate matrix size - expects 3x3 or 4x4 matrix");
return NULL;
@@ -750,7 +750,7 @@
mat= tmat;
}
else {
- PyErr_SetString(PyExc_AttributeError,
+ PyErr_SetString(PyExc_ValueError,
"matrix.to_euler(): "
"inappropriate matrix size - expects 3x3 or 4x4 matrix");
return NULL;
@@ -879,7 +879,7 @@
return NULL;
if((self->col_size < 3) || (self->row_size < 3)) {
- PyErr_SetString(PyExc_AttributeError,
+ PyErr_SetString(PyExc_TypeError,
"matrix.to_3x3(): inappropriate matrix size");
return NULL;
}
@@ -903,7 +903,7 @@
return NULL;
if((self->col_size < 3) || self->row_size < 4){
- PyErr_SetString(PyExc_AttributeError,
+ PyErr_SetString(PyExc_TypeError,
"matrix.to_translation(): "
"inappropriate matrix size");
return NULL;
@@ -933,7 +933,7 @@
/*must be 3-4 cols, 3-4 rows, square matrix*/
if((self->col_size < 3) || (self->row_size < 3)) {
- PyErr_SetString(PyExc_AttributeError,
+ PyErr_SetString(PyExc_TypeError,
"matrix.to_scale(): "
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list