aboutsummaryrefslogtreecommitdiffstats
path: root/libshiboken/conversions.h
diff options
context:
space:
mode:
authorMarcelo Lira <marcelo.lira@openbossa.org>2010-02-20 17:34:41 -0300
committerMarcelo Lira <marcelo.lira@openbossa.org>2010-02-20 18:20:32 -0300
commit02e5d72cceae2b03ce25068567e3c4c903a4df3d (patch)
treeeaaf91689311d94c7e3288c0ac3827356631440c /libshiboken/conversions.h
parent92a957859814d40d86e7e1287ec1b9c2b717a923 (diff)
The C string converter now transforms a Python None in a C null pointer.
The conversion of '[const] char*' to C++ now accepts an None object and gives back a NULL pointer.
Diffstat (limited to 'libshiboken/conversions.h')
-rw-r--r--libshiboken/conversions.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/libshiboken/conversions.h b/libshiboken/conversions.h
index 47d7ef6a8..436ea3366 100644
--- a/libshiboken/conversions.h
+++ b/libshiboken/conversions.h
@@ -394,7 +394,11 @@ struct Converter_CString
Py_RETURN_NONE;
return PyString_FromString(cppobj);
}
- static inline CString toCpp(PyObject* pyobj) { return PyString_AsString(pyobj); }
+ static inline CString toCpp(PyObject* pyobj) {
+ if (pyobj == Py_None)
+ return 0;
+ return PyString_AsString(pyobj);
+ }
};
template <> struct Converter<char*> : Converter_CString<char*> {};