diff options
author | Campbell Barton <ideasman42@gmail.com> | 2018-06-26 10:26:52 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2018-06-26 10:31:57 +0300 |
commit | a69f985f40905b01cf542d370831e7ade138a4e3 (patch) | |
tree | 17f1e926a9f09a9461967efa92a8daedc344fc4d /source/blender/python | |
parent | 87f598fd3f2b7968af0620b98f16bb86aa17d541 (diff) |
PyAPI: move deep-copy args check to py_capi_utils
Diffstat (limited to 'source/blender/python')
-rw-r--r-- | source/blender/python/generic/py_capi_utils.c | 6 | ||||
-rw-r--r-- | source/blender/python/generic/py_capi_utils.h | 1 | ||||
-rw-r--r-- | source/blender/python/mathutils/mathutils.c | 7 | ||||
-rw-r--r-- | source/blender/python/mathutils/mathutils.h | 2 | ||||
-rw-r--r-- | source/blender/python/mathutils/mathutils_Color.c | 4 | ||||
-rw-r--r-- | source/blender/python/mathutils/mathutils_Euler.c | 4 | ||||
-rw-r--r-- | source/blender/python/mathutils/mathutils_Matrix.c | 4 | ||||
-rw-r--r-- | source/blender/python/mathutils/mathutils_Quaternion.c | 5 | ||||
-rw-r--r-- | source/blender/python/mathutils/mathutils_Vector.c | 3 |
9 files changed, 21 insertions, 15 deletions
diff --git a/source/blender/python/generic/py_capi_utils.c b/source/blender/python/generic/py_capi_utils.c index 22646462163..cee9ad3b477 100644 --- a/source/blender/python/generic/py_capi_utils.c +++ b/source/blender/python/generic/py_capi_utils.c @@ -230,6 +230,12 @@ int PyC_ParseBool(PyObject *o, void *p) return 1; } +/* silly function, we dont use arg. just check its compatible with __deepcopy__ */ +int PyC_CheckArgs_DeepCopy(PyObject *args) +{ + PyObject *dummy_pydict; + return PyArg_ParseTuple(args, "|O!:__deepcopy__", &PyDict_Type, &dummy_pydict) != 0; +} #ifndef MATH_STANDALONE diff --git a/source/blender/python/generic/py_capi_utils.h b/source/blender/python/generic/py_capi_utils.h index fe7a046d99c..10419ce71d4 100644 --- a/source/blender/python/generic/py_capi_utils.h +++ b/source/blender/python/generic/py_capi_utils.h @@ -106,6 +106,7 @@ bool PyC_RunString_AsString(const char *expr, const char *filename, char **r_val int PyC_ParseBool(PyObject *o, void *p); +int PyC_CheckArgs_DeepCopy(PyObject *args); /* Integer parsing (with overflow checks), -1 on error. */ int PyC_Long_AsBool(PyObject *value); diff --git a/source/blender/python/mathutils/mathutils.c b/source/blender/python/mathutils/mathutils.c index 96ae0a9e50f..0c365ad192c 100644 --- a/source/blender/python/mathutils/mathutils.c +++ b/source/blender/python/mathutils/mathutils.c @@ -419,13 +419,6 @@ PyObject *mathutils_dynstr_to_py(struct DynStr *ds) } #endif -/* silly function, we dont use arg. just check its compatible with __deepcopy__ */ -int mathutils_deepcopy_args_check(PyObject *args) -{ - PyObject *dummy_pydict; - return PyArg_ParseTuple(args, "|O!:__deepcopy__", &PyDict_Type, &dummy_pydict) != 0; -} - /* Mathutils Callbacks */ /* for mathutils internal use only, eventually should re-alloc but to start with we only have a few users */ diff --git a/source/blender/python/mathutils/mathutils.h b/source/blender/python/mathutils/mathutils.h index ec927a9e316..b151ba7280d 100644 --- a/source/blender/python/mathutils/mathutils.h +++ b/source/blender/python/mathutils/mathutils.h @@ -174,6 +174,4 @@ int column_vector_multiplication(float rvec[4], VectorObject *vec, MatrixObject PyObject *mathutils_dynstr_to_py(struct DynStr *ds); #endif -int mathutils_deepcopy_args_check(PyObject *args); - #endif /* __MATHUTILS_H__ */ diff --git a/source/blender/python/mathutils/mathutils_Color.c b/source/blender/python/mathutils/mathutils_Color.c index 9997cd9c1f5..4c1163a6181 100644 --- a/source/blender/python/mathutils/mathutils_Color.c +++ b/source/blender/python/mathutils/mathutils_Color.c @@ -33,6 +33,7 @@ #include "BLI_utildefines.h" #include "../generic/python_utildefines.h" +#include "../generic/py_capi_utils.h" #ifndef MATH_STANDALONE # include "BLI_dynstr.h" @@ -113,8 +114,9 @@ static PyObject *Color_copy(ColorObject *self) } static PyObject *Color_deepcopy(ColorObject *self, PyObject *args) { - if (!mathutils_deepcopy_args_check(args)) + if (!PyC_CheckArgs_DeepCopy(args)) { return NULL; + } return Color_copy(self); } diff --git a/source/blender/python/mathutils/mathutils_Euler.c b/source/blender/python/mathutils/mathutils_Euler.c index 026384743bd..8be3de42226 100644 --- a/source/blender/python/mathutils/mathutils_Euler.c +++ b/source/blender/python/mathutils/mathutils_Euler.c @@ -32,6 +32,7 @@ #include "BLI_math.h" #include "BLI_utildefines.h" #include "../generic/python_utildefines.h" +#include "../generic/py_capi_utils.h" #ifndef MATH_STANDALONE # include "BLI_dynstr.h" @@ -312,8 +313,9 @@ static PyObject *Euler_copy(EulerObject *self) } static PyObject *Euler_deepcopy(EulerObject *self, PyObject *args) { - if (!mathutils_deepcopy_args_check(args)) + if (!PyC_CheckArgs_DeepCopy(args)) { return NULL; + } return Euler_copy(self); } diff --git a/source/blender/python/mathutils/mathutils_Matrix.c b/source/blender/python/mathutils/mathutils_Matrix.c index cc6a5367895..70c400f99b8 100644 --- a/source/blender/python/mathutils/mathutils_Matrix.c +++ b/source/blender/python/mathutils/mathutils_Matrix.c @@ -33,6 +33,7 @@ #include "BLI_utildefines.h" #include "../generic/python_utildefines.h" +#include "../generic/py_capi_utils.h" #ifndef MATH_STANDALONE # include "BLI_string.h" @@ -1945,8 +1946,9 @@ static PyObject *Matrix_copy(MatrixObject *self) } static PyObject *Matrix_deepcopy(MatrixObject *self, PyObject *args) { - if (!mathutils_deepcopy_args_check(args)) + if (!PyC_CheckArgs_DeepCopy(args)) { return NULL; + } return Matrix_copy(self); } diff --git a/source/blender/python/mathutils/mathutils_Quaternion.c b/source/blender/python/mathutils/mathutils_Quaternion.c index d283c717a46..1a6fd0ee86f 100644 --- a/source/blender/python/mathutils/mathutils_Quaternion.c +++ b/source/blender/python/mathutils/mathutils_Quaternion.c @@ -33,6 +33,7 @@ #include "BLI_utildefines.h" #include "../generic/python_utildefines.h" +#include "../generic/py_capi_utils.h" #ifndef MATH_STANDALONE # include "BLI_dynstr.h" @@ -496,8 +497,9 @@ static PyObject *Quaternion_copy(QuaternionObject *self) } static PyObject *Quaternion_deepcopy(QuaternionObject *self, PyObject *args) { - if (!mathutils_deepcopy_args_check(args)) + if (!PyC_CheckArgs_DeepCopy(args)) { return NULL; + } return Quaternion_copy(self); } @@ -1393,4 +1395,3 @@ PyObject *Quaternion_CreatePyObject_cb(PyObject *cb_user, return (PyObject *)self; } - diff --git a/source/blender/python/mathutils/mathutils_Vector.c b/source/blender/python/mathutils/mathutils_Vector.c index 65450505e08..a06a63c8067 100644 --- a/source/blender/python/mathutils/mathutils_Vector.c +++ b/source/blender/python/mathutils/mathutils_Vector.c @@ -1331,8 +1331,9 @@ static PyObject *Vector_copy(VectorObject *self) } static PyObject *Vector_deepcopy(VectorObject *self, PyObject *args) { - if (!mathutils_deepcopy_args_check(args)) + if (!PyC_CheckArgs_DeepCopy(args)) { return NULL; + } return Vector_copy(self); } |