Fix cpython bindings for python 3.10+ Py_ssize_t

LT1AB
Ryan Burns 2022-07-20 17:25:02 -07:00
parent ac596fcf7c
commit 575d936a02
7 changed files with 52 additions and 42 deletions

View File

@ -28,7 +28,7 @@
#define PY_SSIZE_T_CLEAN
#include <Python.h> #include <Python.h>
#include "denseoffsetsmodule.h" #include "denseoffsetsmodule.h"
#include <cmath> #include <cmath>
@ -232,11 +232,12 @@ PyObject * setScaleFactorY_C(PyObject* self, PyObject* args)
PyObject * setDebugFlag_C(PyObject* self, PyObject* args) PyObject * setDebugFlag_C(PyObject* self, PyObject* args)
{ {
char * var; char * var;
int varInt; Py_ssize_t varSize;
if(!PyArg_ParseTuple(args, "s#", &var ,&varInt)) if(!PyArg_ParseTuple(args, "s#", &var, &varSize))
{ {
return NULL; return NULL;
} }
int varInt = Py_SAFE_DOWNCAST(varSize, Py_ssize_t, int);
setDebugFlag_f(var,&varInt); setDebugFlag_f(var,&varInt);
return Py_BuildValue("i", 0); return Py_BuildValue("i", 0);
} }

View File

@ -28,7 +28,7 @@
#define PY_SSIZE_T_CLEAN
#include <Python.h> #include <Python.h>
#include "estimateoffsetsmodule.h" #include "estimateoffsetsmodule.h"
#include <cmath> #include <cmath>
@ -433,11 +433,12 @@ PyObject * setSecondPRF_C(PyObject* self, PyObject* args)
PyObject * setDebugFlag_C(PyObject* self, PyObject* args) PyObject * setDebugFlag_C(PyObject* self, PyObject* args)
{ {
char * var; char * var;
int varInt; Py_ssize_t varSize;
if(!PyArg_ParseTuple(args, "s#", &var ,&varInt)) if(!PyArg_ParseTuple(args, "s#", &var, &varSize))
{ {
return NULL; return NULL;
} }
int varInt = Py_SAFE_DOWNCAST(varSize, Py_ssize_t, int);
setDebugFlag_f(var,&varInt); setDebugFlag_f(var,&varInt);
return Py_BuildValue("i", 0); return Py_BuildValue("i", 0);
} }

View File

@ -7,7 +7,7 @@
// //
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#define PY_SSIZE_T_CLEAN
#include <Python.h> #include <Python.h>
#include "StdOE.h" #include "StdOE.h"
#include "StdOEmodule.h" #include "StdOEmodule.h"
@ -53,7 +53,7 @@ PyInit_StdOE()
PyObject * setStdErr_C(PyObject* self, PyObject* args) PyObject * setStdErr_C(PyObject* self, PyObject* args)
{ {
char * var; char * var;
int varInt; Py_ssize_t varInt;
if(!PyArg_ParseTuple(args, "s#", &var ,&varInt)) if(!PyArg_ParseTuple(args, "s#", &var ,&varInt))
{ {
return NULL; return NULL;
@ -65,7 +65,7 @@ PyObject * setStdErr_C(PyObject* self, PyObject* args)
PyObject * setStdErrFileTag_C(PyObject* self, PyObject* args) PyObject * setStdErrFileTag_C(PyObject* self, PyObject* args)
{ {
char * var; char * var;
int varInt; Py_ssize_t varInt;
if(!PyArg_ParseTuple(args, "s#", &var ,&varInt)) if(!PyArg_ParseTuple(args, "s#", &var ,&varInt))
{ {
return NULL; return NULL;
@ -77,7 +77,7 @@ PyObject * setStdErrFileTag_C(PyObject* self, PyObject* args)
PyObject * setStdOutFileTag_C(PyObject* self, PyObject* args) PyObject * setStdOutFileTag_C(PyObject* self, PyObject* args)
{ {
char * var; char * var;
int varInt; Py_ssize_t varInt;
if(!PyArg_ParseTuple(args, "s#", &var ,&varInt)) if(!PyArg_ParseTuple(args, "s#", &var ,&varInt))
{ {
return NULL; return NULL;
@ -89,7 +89,7 @@ PyObject * setStdOutFileTag_C(PyObject* self, PyObject* args)
PyObject * setStdLogFileTag_C(PyObject* self, PyObject* args) PyObject * setStdLogFileTag_C(PyObject* self, PyObject* args)
{ {
char * var; char * var;
int varInt; Py_ssize_t varInt;
if(!PyArg_ParseTuple(args, "s#", &var ,&varInt)) if(!PyArg_ParseTuple(args, "s#", &var ,&varInt))
{ {
return NULL; return NULL;
@ -101,7 +101,7 @@ PyObject * setStdLogFileTag_C(PyObject* self, PyObject* args)
PyObject * setStdErrFile_C(PyObject* self, PyObject* args) PyObject * setStdErrFile_C(PyObject* self, PyObject* args)
{ {
char * var; char * var;
int varInt; Py_ssize_t varInt;
if(!PyArg_ParseTuple(args, "s#", &var ,&varInt)) if(!PyArg_ParseTuple(args, "s#", &var ,&varInt))
{ {
return NULL; return NULL;
@ -113,7 +113,7 @@ PyObject * setStdErrFile_C(PyObject* self, PyObject* args)
PyObject * setStdOut_C(PyObject* self, PyObject* args) PyObject * setStdOut_C(PyObject* self, PyObject* args)
{ {
char * var; char * var;
int varInt; Py_ssize_t varInt;
if(!PyArg_ParseTuple(args, "s#", &var ,&varInt)) if(!PyArg_ParseTuple(args, "s#", &var ,&varInt))
{ {
return NULL; return NULL;
@ -125,7 +125,7 @@ PyObject * setStdOut_C(PyObject* self, PyObject* args)
PyObject * setStdLogFile_C(PyObject* self, PyObject* args) PyObject * setStdLogFile_C(PyObject* self, PyObject* args)
{ {
char * var; char * var;
int varInt; Py_ssize_t varInt;
if(!PyArg_ParseTuple(args, "s#", &var ,&varInt)) if(!PyArg_ParseTuple(args, "s#", &var ,&varInt))
{ {
return NULL; return NULL;
@ -137,7 +137,7 @@ PyObject * setStdLogFile_C(PyObject* self, PyObject* args)
PyObject * setStdOutFile_C(PyObject* self, PyObject* args) PyObject * setStdOutFile_C(PyObject* self, PyObject* args)
{ {
char * var; char * var;
int varInt; Py_ssize_t varInt;
if(!PyArg_ParseTuple(args, "s#", &var ,&varInt)) if(!PyArg_ParseTuple(args, "s#", &var ,&varInt))
{ {
return NULL; return NULL;
@ -161,7 +161,7 @@ PyObject * getStdErr_C(PyObject* self, PyObject* args)
PyObject * writeStd_C(PyObject* self, PyObject* args) PyObject * writeStd_C(PyObject* self, PyObject* args)
{ {
char * var; char * var;
int varInt; Py_ssize_t varInt;
if(!PyArg_ParseTuple(args, "s#", &var ,&varInt)) if(!PyArg_ParseTuple(args, "s#", &var ,&varInt))
{ {
return NULL; return NULL;
@ -173,7 +173,7 @@ PyObject * writeStd_C(PyObject* self, PyObject* args)
PyObject * writeStdLog_C(PyObject* self, PyObject* args) PyObject * writeStdLog_C(PyObject* self, PyObject* args)
{ {
char * var; char * var;
int varInt; Py_ssize_t varInt;
if(!PyArg_ParseTuple(args, "s#", &var ,&varInt)) if(!PyArg_ParseTuple(args, "s#", &var ,&varInt))
{ {
return NULL; return NULL;
@ -185,7 +185,7 @@ PyObject * writeStdLog_C(PyObject* self, PyObject* args)
PyObject * writeStdOut_C(PyObject* self, PyObject* args) PyObject * writeStdOut_C(PyObject* self, PyObject* args)
{ {
char * var; char * var;
int varInt; Py_ssize_t varInt;
if(!PyArg_ParseTuple(args, "s#", &var ,&varInt)) if(!PyArg_ParseTuple(args, "s#", &var ,&varInt))
{ {
return NULL; return NULL;
@ -197,7 +197,7 @@ PyObject * writeStdOut_C(PyObject* self, PyObject* args)
PyObject * writeStdErr_C(PyObject* self, PyObject* args) PyObject * writeStdErr_C(PyObject* self, PyObject* args)
{ {
char * var; char * var;
int varInt; Py_ssize_t varInt;
if(!PyArg_ParseTuple(args, "s#", &var ,&varInt)) if(!PyArg_ParseTuple(args, "s#", &var ,&varInt))
{ {
return NULL; return NULL;
@ -209,9 +209,9 @@ PyObject * writeStdErr_C(PyObject* self, PyObject* args)
PyObject * writeStdFile_C(PyObject* self, PyObject* args) PyObject * writeStdFile_C(PyObject* self, PyObject* args)
{ {
char * var; char * var;
int varInt; Py_ssize_t varInt;
char * var1; char * var1;
int varInt1; Py_ssize_t varInt1;
if(!PyArg_ParseTuple(args, "s#s#", &var ,&varInt,&var1,&varInt1)) if(!PyArg_ParseTuple(args, "s#s#", &var ,&varInt,&var1,&varInt1))
{ {
return NULL; return NULL;

View File

@ -1,3 +1,4 @@
#define PY_SSIZE_T_CLEAN
#include <Python.h> #include <Python.h>
#include "ampcormodule.h" #include "ampcormodule.h"
#include <cmath> #include <cmath>
@ -44,12 +45,12 @@ PyInit_ampcor()
PyObject* setImageDatatype1_C(PyObject* self, PyObject* args) PyObject* setImageDatatype1_C(PyObject* self, PyObject* args)
{ {
char* type; char* type;
int len; Py_ssize_t len;
if( !PyArg_ParseTuple(args,"s#",&type,&len) ) if( !PyArg_ParseTuple(args,"s#",&type,&len) )
{ {
return NULL; return NULL;
} }
setImageDatatype1_f(type,len); setImageDatatype1_f(type, Py_SAFE_DOWNCAST(len, Py_ssize_t, int));
return Py_BuildValue("i",0); return Py_BuildValue("i",0);
} }
@ -79,12 +80,12 @@ PyObject* setImageLength1_C(PyObject* self, PyObject* args)
PyObject* setImageDatatype2_C(PyObject* self, PyObject* args) PyObject* setImageDatatype2_C(PyObject* self, PyObject* args)
{ {
char* type; char* type;
int len; Py_ssize_t len;
if( !PyArg_ParseTuple(args,"s#",&type,&len) ) if( !PyArg_ParseTuple(args,"s#",&type,&len) )
{ {
return NULL; return NULL;
} }
setImageDatatype2_f(type,len); setImageDatatype2_f(type, Py_SAFE_DOWNCAST(len, Py_ssize_t, int));
return Py_BuildValue("i",0); return Py_BuildValue("i",0);
} }

View File

@ -27,7 +27,7 @@
#define PY_SSIZE_T_CLEAN
#include <Python.h> #include <Python.h>
#include "estambmodule.h" #include "estambmodule.h"
#include <cmath> #include <cmath>
@ -531,33 +531,36 @@ PyObject * setTransDat_C(PyObject* self, PyObject* args)
PyObject * setIQFlip_C(PyObject* self, PyObject* args) PyObject * setIQFlip_C(PyObject* self, PyObject* args)
{ {
char * var; char * var;
int varInt; Py_ssize_t varSize;
if(!PyArg_ParseTuple(args, "s#", &var ,&varInt)) if(!PyArg_ParseTuple(args, "s#", &var, &varSize))
{ {
return NULL; return NULL;
} }
int varInt = Py_SAFE_DOWNCAST(varSize, Py_ssize_t, int);
setIQFlip_f(var,&varInt); setIQFlip_f(var,&varInt);
return Py_BuildValue("i", 0); return Py_BuildValue("i", 0);
} }
PyObject * setDeskewFlag_C(PyObject* self, PyObject* args) PyObject * setDeskewFlag_C(PyObject* self, PyObject* args)
{ {
char * var; char * var;
int varInt; Py_ssize_t varSize;
if(!PyArg_ParseTuple(args, "s#", &var ,&varInt)) if(!PyArg_ParseTuple(args, "s#", &var, &varSize))
{ {
return NULL; return NULL;
} }
int varInt = Py_SAFE_DOWNCAST(varSize, Py_ssize_t, int);
setDeskewFlag_f(var,&varInt); setDeskewFlag_f(var,&varInt);
return Py_BuildValue("i", 0); return Py_BuildValue("i", 0);
} }
PyObject * setSecondaryRangeMigrationFlag_C(PyObject* self, PyObject* args) PyObject * setSecondaryRangeMigrationFlag_C(PyObject* self, PyObject* args)
{ {
char * var; char * var;
int varInt; Py_ssize_t varSize;
if(!PyArg_ParseTuple(args, "s#", &var ,&varInt)) if(!PyArg_ParseTuple(args, "s#", &var, &varSize))
{ {
return NULL; return NULL;
} }
int varInt = Py_SAFE_DOWNCAST(varSize, Py_ssize_t, int);
setSecondaryRangeMigrationFlag_f(var,&varInt); setSecondaryRangeMigrationFlag_f(var,&varInt);
return Py_BuildValue("i", 0); return Py_BuildValue("i", 0);
} }

View File

@ -27,7 +27,7 @@
#define PY_SSIZE_T_CLEAN
#include <Python.h> #include <Python.h>
#include "formslcmodule.h" #include "formslcmodule.h"
#include <cmath> #include <cmath>
@ -561,11 +561,12 @@ PyObject * setTransDat_C(PyObject* self, PyObject* args)
PyObject * setIQFlip_C(PyObject* self, PyObject* args) PyObject * setIQFlip_C(PyObject* self, PyObject* args)
{ {
char * var; char * var;
int varInt; Py_ssize_t varSize;
if(!PyArg_ParseTuple(args, "s#", &var ,&varInt)) if(!PyArg_ParseTuple(args, "s#", &var, &varSize))
{ {
return NULL; return NULL;
} }
int varInt = Py_SAFE_DOWNCAST(varSize, Py_ssize_t, int);
setIQFlip_f(var,&varInt); setIQFlip_f(var,&varInt);
return Py_BuildValue("i", 0); return Py_BuildValue("i", 0);
} }
@ -573,11 +574,12 @@ PyObject * setIQFlip_C(PyObject* self, PyObject* args)
PyObject * setDeskewFlag_C(PyObject* self, PyObject* args) PyObject * setDeskewFlag_C(PyObject* self, PyObject* args)
{ {
char * var; char * var;
int varInt; Py_ssize_t varSize;
if(!PyArg_ParseTuple(args, "s#", &var ,&varInt)) if(!PyArg_ParseTuple(args, "s#", &var, &varSize))
{ {
return NULL; return NULL;
} }
int varInt = Py_SAFE_DOWNCAST(varSize, Py_ssize_t, int);
setDeskewFlag_f(var,&varInt); setDeskewFlag_f(var,&varInt);
return Py_BuildValue("i", 0); return Py_BuildValue("i", 0);
} }
@ -585,11 +587,12 @@ PyObject * setDeskewFlag_C(PyObject* self, PyObject* args)
PyObject * setSecondaryRangeMigrationFlag_C(PyObject* self, PyObject* args) PyObject * setSecondaryRangeMigrationFlag_C(PyObject* self, PyObject* args)
{ {
char * var; char * var;
int varInt; Py_ssize_t varSize;
if(!PyArg_ParseTuple(args, "s#", &var ,&varInt)) if(!PyArg_ParseTuple(args, "s#", &var, &varSize))
{ {
return NULL; return NULL;
} }
int varInt = Py_SAFE_DOWNCAST(varSize, Py_ssize_t, int);
setSecondaryRangeMigrationFlag_f(var,&varInt); setSecondaryRangeMigrationFlag_f(var,&varInt);
return Py_BuildValue("i", 0); return Py_BuildValue("i", 0);
} }

View File

@ -27,7 +27,7 @@
#define PY_SSIZE_T_CLEAN
#include <Python.h> #include <Python.h>
#include "correct_geoid_i2_srtmmodule.h" #include "correct_geoid_i2_srtmmodule.h"
#include <cmath> #include <cmath>
@ -172,12 +172,13 @@ PyObject * setConversionType_C(PyObject* self, PyObject* args)
PyObject * setGeoidFilename_C(PyObject* self, PyObject* args) PyObject * setGeoidFilename_C(PyObject* self, PyObject* args)
{ {
char * varChar; char * varChar;
int var; Py_ssize_t var;
if(!PyArg_ParseTuple(args, "s#", &varChar ,&var)) if(!PyArg_ParseTuple(args, "s#", &varChar ,&var))
{ {
return NULL; return NULL;
} }
setGeoidFilename_f(varChar,&var); int ivar = Py_SAFE_DOWNCAST(var, Py_ssize_t, int);
setGeoidFilename_f(varChar, &ivar);
return Py_BuildValue("i", 0); return Py_BuildValue("i", 0);
} }