More fixes

This commit is contained in:
Pablo Galindo Salgado 2025-09-23 18:51:46 +01:00 committed by Dino Viehland
parent e0878bedf7
commit f9880bfd5f
3 changed files with 9 additions and 5 deletions

View file

@ -1835,7 +1835,9 @@ dummy_func(
PyObject *res_o = PyStackRef_AsPyObjectBorrow(*res);
if (PyLazyImport_CheckExact(res_o)) {
PyObject *l_v = _PyImport_LoadLazyImportTstate(tstate, res_o);
Py_DECREF(res_o);
if (PyDict_SetItem(GLOBALS(), name, l_v) < 0) {
JUMP_TO_LABEL(error);
}
res_o = l_v;
PyStackRef_CLOSE(res[0]);
ERROR_IF(res_o == NULL);
@ -2948,7 +2950,7 @@ dummy_func(
PyObject *name = GETITEM(FRAME_CO_NAMES, oparg >> 2);
PyObject *res_o;
if (!(oparg & 0x02)) {
res_o = _PyEval_LazyImportName(tstate, BUILTINS(), GLOBALS(), LOCALS(), name,
res_o = _PyEval_LazyImportName(tstate, BUILTINS(), GLOBALS(), LOCALS(), name,
PyStackRef_AsPyObjectBorrow(fromlist),
PyStackRef_AsPyObjectBorrow(level),
oparg & 0x01);

View file

@ -2490,8 +2490,10 @@
if (PyLazyImport_CheckExact(res_o)) {
_PyFrame_SetStackPointer(frame, stack_pointer);
PyObject *l_v = _PyImport_LoadLazyImportTstate(tstate, res_o);
Py_DECREF(res_o);
stack_pointer = _PyFrame_GetStackPointer(frame);
if (PyDict_SetItem(GLOBALS(), name, l_v) < 0) {
JUMP_TO_LABEL(error);
}
res_o = l_v;
_PyFrame_SetStackPointer(frame, stack_pointer);
PyStackRef_CLOSE(res[0]);

View file

@ -9193,10 +9193,10 @@
if (PyLazyImport_CheckExact(res_o)) {
_PyFrame_SetStackPointer(frame, stack_pointer);
PyObject *l_v = _PyImport_LoadLazyImportTstate(tstate, res_o);
if(PyDict_SetItem(GLOBALS(), name, l_v) < 0) {
stack_pointer = _PyFrame_GetStackPointer(frame);
if (PyDict_SetItem(GLOBALS(), name, l_v) < 0) {
JUMP_TO_LABEL(error);
}
stack_pointer = _PyFrame_GetStackPointer(frame);
res_o = l_v;
_PyFrame_SetStackPointer(frame, stack_pointer);
PyStackRef_CLOSE(res[0]);