Fix code injection of QIODevice to support returning an error.
This commit is contained in:
parent
1e149f3de4
commit
1c0279fa25
1 changed files with 16 additions and 8 deletions
|
|
@ -1854,11 +1854,15 @@
|
||||||
<remove-argument />
|
<remove-argument />
|
||||||
</modify-argument>
|
</modify-argument>
|
||||||
<modify-argument index="return">
|
<modify-argument index="return">
|
||||||
<replace-type modified-type="QByteArray"/>
|
<replace-type modified-type="PyObject"/>
|
||||||
<conversion-rule class="native">
|
<conversion-rule class="native">
|
||||||
const QByteArray ba(%CONVERTTOCPP[QByteArray](%PYARG_0));
|
%RETURN_TYPE %out;
|
||||||
memcpy(%1, ba.data(), ba.size());
|
if (!PyString_Check(%PYARG_0)) {
|
||||||
long long %out = ba.size();
|
%out = -1;
|
||||||
|
} else {
|
||||||
|
%out = PyString_GET_SIZE((PyObject*)%PYARG_0);
|
||||||
|
qstrncpy(%1, PyString_AS_STRING((PyObject*)%PYARG_0), %out + 1);
|
||||||
|
}
|
||||||
</conversion-rule>
|
</conversion-rule>
|
||||||
</modify-argument>
|
</modify-argument>
|
||||||
</modify-function>
|
</modify-function>
|
||||||
|
|
@ -1873,11 +1877,15 @@
|
||||||
<remove-argument />
|
<remove-argument />
|
||||||
</modify-argument>
|
</modify-argument>
|
||||||
<modify-argument index="return">
|
<modify-argument index="return">
|
||||||
<replace-type modified-type="QByteArray"/>
|
<replace-type modified-type="PyObject"/>
|
||||||
<conversion-rule class="native">
|
<conversion-rule class="native">
|
||||||
const QByteArray ba(%CONVERTTOCPP[QByteArray](%PYARG_0));
|
%RETURN_TYPE %out;
|
||||||
memcpy(data, ba.data(), ba.size());
|
if (!PyString_Check(%PYARG_0)) {
|
||||||
long long %out = ba.size();
|
%out = -1;
|
||||||
|
} else {
|
||||||
|
%out = PyString_GET_SIZE((PyObject*)%PYARG_0);
|
||||||
|
qstrncpy(%1, PyString_AS_STRING((PyObject*)%PYARG_0), %out + 1);
|
||||||
|
}
|
||||||
</conversion-rule>
|
</conversion-rule>
|
||||||
</modify-argument>
|
</modify-argument>
|
||||||
</modify-function>
|
</modify-function>
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue