Fix issue with cmd/cmdj

This commit is contained in:
Maijin 2018-03-03 10:53:08 +01:00
parent 98b9de504b
commit efc7a7e90e

View File

@ -20,9 +20,13 @@ PyObject *api_cmd(PyObject *self, PyObject *args)
Q_UNUSED(self); Q_UNUSED(self);
char *command; char *command;
char *result = (char*) ""; char *result = (char*) "";
QString cmdRes;
QByteArray cmdBytes;
if (PyArg_ParseTuple(args, "s:command", &command)) if (PyArg_ParseTuple(args, "s:command", &command))
{ {
result = Core()->cmd(command).toLocal8Bit().data(); cmdRes = Core()->cmd(command);
cmdBytes = cmdRes.toLocal8Bit();
result = cmdBytes.data();
} }
return PyUnicode_FromString(result); return PyUnicode_FromString(result);
} }
@ -32,9 +36,13 @@ PyObject *api_cmdj(PyObject *self, PyObject *args)
Q_UNUSED(self); Q_UNUSED(self);
char *command; char *command;
char *result = (char*) ""; char *result = (char*) "";
QString cmdRes;
QByteArray cmdBytes;
if (PyArg_ParseTuple(args, "s:command", &command)) if (PyArg_ParseTuple(args, "s:command", &command))
{ {
result = Core()->cmd(command).toLocal8Bit().data(); cmdRes = Core()->cmd(command);
cmdBytes = cmdRes.toLocal8Bit();
result = cmdBytes.data();
PyObject *jsonModule = PyImport_ImportModule("json"); PyObject *jsonModule = PyImport_ImportModule("json");
PyObject *loadsFunc = PyObject_GetAttrString(jsonModule, "loads"); PyObject *loadsFunc = PyObject_GetAttrString(jsonModule, "loads");
if (!PyCallable_Check(loadsFunc)) { if (!PyCallable_Check(loadsFunc)) {