diff --git a/Lib/python/pycontainer.swg b/Lib/python/pycontainer.swg index 0d5769881..286e3674a 100644 --- a/Lib/python/pycontainer.swg +++ b/Lib/python/pycontainer.swg @@ -613,8 +613,7 @@ namespace swig } else { PyErr_SetString(PyExc_OverflowError, "sequence size not valid in python"); - Py_INCREF(Py_None); - return Py_None; + return NULL; } } }; diff --git a/Lib/python/pystrings.swg b/Lib/python/pystrings.swg index 99fb68d25..3c1806194 100644 --- a/Lib/python/pystrings.swg +++ b/Lib/python/pystrings.swg @@ -138,7 +138,8 @@ SWIGINTERNINLINE PyObject * SWIG_FromCharArray(const char* carray, size_t size) { if (size > INT_MAX) { - return Py_None; + return SWIG_NewPointerObj(SWIG_const_cast(carray,char *), + SWIG_TypeQuery("char *"), 0); } else { return PyString_FromStringAndSize(carray, SWIG_numeric_cast(size,int)); } diff --git a/Lib/python/pywstrings.swg b/Lib/python/pywstrings.swg index 3841a9c8e..b2a0b1169 100644 --- a/Lib/python/pywstrings.swg +++ b/Lib/python/pywstrings.swg @@ -132,8 +132,8 @@ SWIGINTERNINLINE PyObject * SWIG_FromWCharArray(const wchar_t * carray, size_t size) { if (size > INT_MAX) { - SWIG_NewPointerObj(SWIG_const_cast(carray,wchar_t *), SWIG_TypeQuery("wchar_t *"), 0); - return Py_None; + return SWIG_NewPointerObj(SWIG_const_cast(carray,wchar_t *), + SWIG_TypeQuery("wchar_t *"), 0); } else { return PyUnicode_FromWideChar(carray, SWIG_numeric_cast(size,int)); } diff --git a/Lib/python/std_map.i b/Lib/python/std_map.i index 703e77373..4504e767b 100644 --- a/Lib/python/std_map.i +++ b/Lib/python/std_map.i @@ -43,8 +43,7 @@ if (pysize < 0) { PyErr_SetString(PyExc_OverflowError, "map size not valid in python"); - Py_INCREF(Py_None); - return Py_None; + return NULL; } PyObject *obj = PyDict_New(); for (const_iterator i= map.begin(); i!= map.end(); ++i) { @@ -93,8 +92,7 @@ if (pysize < 0) { PyErr_SetString(PyExc_OverflowError, "map size not valid in python"); - Py_INCREF(Py_None); - return Py_None; + return NULL; } PyObject* keyList = PyList_New(pysize); Map::const_iterator i = self->begin(); @@ -110,8 +108,7 @@ if (pysize < 0) { PyErr_SetString(PyExc_OverflowError, "map size not valid in python"); - Py_INCREF(Py_None); - return Py_None; + return NULL; } PyObject* valList = PyTuple_New(pysize); Map::const_iterator i = self->begin(); @@ -127,8 +124,7 @@ if (pysize < 0) { PyErr_SetString(PyExc_OverflowError, "map size not valid in python"); - Py_INCREF(Py_None); - return Py_None; + return NULL; } PyObject* itemList = PyTuple_New(pysize); Map::const_iterator i = self->begin(); @@ -149,8 +145,7 @@ if (pysize < 0) { PyErr_SetString(PyExc_OverflowError, "map size not valid in python"); - Py_INCREF(Py_None); - return Py_None; + return NULL; } PyObject* keyTuple = PyTuple_New(pysize); Map::const_iterator i = self->begin(); diff --git a/Lib/python/std_multimap.i b/Lib/python/std_multimap.i index 2431925f8..dde24fda1 100644 --- a/Lib/python/std_multimap.i +++ b/Lib/python/std_multimap.i @@ -43,8 +43,7 @@ if (pysize < 0) { PyErr_SetString(PyExc_OverflowError, "multimap size not valid in python"); - Py_INCREF(Py_None); - return Py_None; + return NULL; } PyObject *obj = PyDict_New(); for (const_iterator i= multimap.begin(); i!= multimap.end(); ++i) {