From a3ee5ad6a62ad566557ca5817633830b04448f1c Mon Sep 17 00:00:00 2001 From: Florent Lamiraux <florent@laas.fr> Date: Thu, 20 Jan 2011 13:36:19 +0100 Subject: [PATCH] Raise exception when PyCObject_Check fails. --- src/entity-py.cc | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/src/entity-py.cc b/src/entity-py.cc index c28bdea..c01ca83 100644 --- a/src/entity-py.cc +++ b/src/entity-py.cc @@ -81,8 +81,11 @@ namespace dynamicgraph { if (!PyArg_ParseTuple(args, "O", &object)) return NULL; - if (!PyCObject_Check(object)) + if (!PyCObject_Check(object)) { + PyErr_SetString(PyExc_TypeError, + "function takes a PyCObject as argument"); return NULL; + } pointer = PyCObject_AsVoidPtr(object); Entity* entity = (Entity*)pointer; @@ -108,8 +111,11 @@ namespace dynamicgraph { if (!PyArg_ParseTuple(args, "Os", &object, &name)) return NULL; - if (!PyCObject_Check(object)) + if (!PyCObject_Check(object)) { + PyErr_SetString(PyExc_TypeError, + "function takes a PyCObject as argument"); return NULL; + } pointer = PyCObject_AsVoidPtr(object); Entity* entity = (Entity*)pointer; @@ -134,8 +140,11 @@ namespace dynamicgraph { if (!PyArg_ParseTuple(args, "O", &object)) return NULL; - if (!PyCObject_Check(object)) + if (!PyCObject_Check(object)) { + PyErr_SetString(PyExc_TypeError, + "function takes a PyCObject as argument"); return NULL; + } pointer = PyCObject_AsVoidPtr(object); Entity* entity = (Entity*)pointer; @@ -368,7 +377,7 @@ namespace dynamicgraph { // Retrieve the entity instance if (!PyCObject_Check(object)) { - PyErr_SetString(error, "first argument is not an object"); + PyErr_SetString(PyExc_TypeError, "first argument is not an object"); return NULL; } pointer = PyCObject_AsVoidPtr(object); @@ -376,7 +385,7 @@ namespace dynamicgraph { // Retrieve the argument tuple if (!PyTuple_Check(argTuple)) { - PyErr_SetString(error, "third argument is not a tuple"); + PyErr_SetString(PyExc_TypeError, "third argument is not a tuple"); return NULL; } unsigned int size = PyTuple_Size(argTuple); @@ -436,7 +445,8 @@ namespace dynamicgraph { // Retrieve the entity instance if (!PyCObject_Check(object)) { - PyErr_SetString(error, "first argument is not an object"); + PyErr_SetString(PyExc_TypeError, + "function takes a PyCObject as argument"); return NULL; } void* pointer = PyCObject_AsVoidPtr(object); -- GitLab