Fixed wxSWIG so that it won't convert None to NULL for parameters that

are C++ references, it still does for pointer parameters.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_2_4_BRANCH@17597 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Robin Dunn
2002-10-21 21:10:11 +00:00
parent 699c00400a
commit dccca5634f

View File

@@ -484,9 +484,13 @@ PYTHON::get_pointer(char *iname, char *srcname, char *src, char *dest,
// Now get the pointer value from the string and save in dest
f << tab4 << "if (" << src << ") {\n"
<< tab8 << "if (" << src << " == Py_None) { " << dest << " = NULL; }\n"
<< tab8 << "else if (SWIG_GetPtrObj(" << src << ",(void **) &" << dest << ",";
if (t->is_reference)
f << tab4 << "if (" << src << ") {\n"
<< tab8 << "if (SWIG_GetPtrObj(" << src << ",(void **) &" << dest << ",";
else
f << tab4 << "if (" << src << ") {\n"
<< tab8 << "if (" << src << " == Py_None) { " << dest << " = NULL; }\n"
<< tab8 << "else if (SWIG_GetPtrObj(" << src << ",(void **) &" << dest << ",";
// If we're passing a void pointer, we give the pointer conversion a NULL
// pointer, otherwise pass in the expected type.