fix: restore linux mingw client build and gm smoke

This commit is contained in:
Claude
2026-04-17 21:53:59 +02:00
parent 2fe362e0a9
commit dfe0baabce
48 changed files with 432 additions and 103 deletions

View File

@@ -10,6 +10,8 @@ bool __PyCallClassMemberFunc_ByCString(PyObject* poClass, const char* c_szFunc,
bool __PyCallClassMemberFunc_ByPyString(PyObject* poClass, PyObject* poFuncName, PyObject* poArgs, PyObject** poRet);
bool __PyCallClassMemberFunc(PyObject* poClass, PyObject* poFunc, PyObject* poArgs, PyObject** poRet);
extern "C" PyObject* M2_GetPyNonePtr(void);
PyObject * Py_BadArgument()
{
PyErr_BadArgument();
@@ -36,13 +38,14 @@ PyObject * Py_BuildException(const char * c_pszErr, ...)
PyObject * Py_BuildNone()
{
Py_INCREF(Py_None);
return Py_None;
PyObject* pyNone = M2_GetPyNonePtr();
Py_INCREF(pyNone);
return pyNone;
}
void Py_ReleaseNone()
{
Py_DECREF(Py_None);
Py_DECREF(M2_GetPyNonePtr());
}
bool PyTuple_GetObject(PyObject* poArgs, int pos, PyObject** ret)
@@ -111,7 +114,7 @@ bool PyTuple_GetFloat(PyObject* poArgs, int pos, float* ret)
if (!poItem)
return false;
*ret = float(PyFloat_AsDouble(poItem));
*ret = static_cast<float>(PyFloat_AsDouble(poItem));
return true;
}
@@ -119,7 +122,7 @@ bool PyTuple_GetByte(PyObject* poArgs, int pos, unsigned char* ret)
{
int val;
bool result = PyTuple_GetInteger(poArgs,pos,&val);
*ret = unsigned char(val);
*ret = static_cast<unsigned char>(val);
return result;
}
@@ -127,7 +130,7 @@ bool PyTuple_GetInteger(PyObject* poArgs, int pos, unsigned char* ret)
{
int val;
bool result = PyTuple_GetInteger(poArgs,pos,&val);
*ret = unsigned char(val);
*ret = static_cast<unsigned char>(val);
return result;
}
@@ -135,7 +138,7 @@ bool PyTuple_GetInteger(PyObject* poArgs, int pos, WORD* ret)
{
int val;
bool result = PyTuple_GetInteger(poArgs,pos,&val);
*ret = WORD(val);
*ret = static_cast<WORD>(val);
return result;
}
@@ -452,4 +455,4 @@ bool __PyCallClassMemberFunc(PyObject* poClass, PyObject * poFunc, PyObject* poA
Py_DECREF(poFunc);
Py_XDECREF(poArgs);
return true;
}
}