mirror of https://github.com/python/cpython
GH-123545: Remove duplicate Py_DECREF when handling _PyOptimizer_Optimize errors (GH-123546)
This commit is contained in:
parent
aa1339aaaa
commit
1fbc118c5d
|
@ -0,0 +1 @@
|
||||||
|
Fix a double decref in rare cases on experimental JIT builds.
|
|
@ -4739,8 +4739,6 @@ dummy_func(
|
||||||
if (optimized <= 0) {
|
if (optimized <= 0) {
|
||||||
exit->temperature = restart_backoff_counter(temperature);
|
exit->temperature = restart_backoff_counter(temperature);
|
||||||
if (optimized < 0) {
|
if (optimized < 0) {
|
||||||
Py_DECREF(current_executor);
|
|
||||||
tstate->previous_executor = Py_None;
|
|
||||||
GOTO_UNWIND();
|
GOTO_UNWIND();
|
||||||
}
|
}
|
||||||
tstate->previous_executor = (PyObject *)current_executor;
|
tstate->previous_executor = (PyObject *)current_executor;
|
||||||
|
@ -4822,8 +4820,6 @@ dummy_func(
|
||||||
if (optimized <= 0) {
|
if (optimized <= 0) {
|
||||||
exit->temperature = restart_backoff_counter(exit->temperature);
|
exit->temperature = restart_backoff_counter(exit->temperature);
|
||||||
if (optimized < 0) {
|
if (optimized < 0) {
|
||||||
Py_DECREF(current_executor);
|
|
||||||
tstate->previous_executor = Py_None;
|
|
||||||
GOTO_UNWIND();
|
GOTO_UNWIND();
|
||||||
}
|
}
|
||||||
GOTO_TIER_ONE(target);
|
GOTO_TIER_ONE(target);
|
||||||
|
|
|
@ -5305,8 +5305,6 @@
|
||||||
if (optimized <= 0) {
|
if (optimized <= 0) {
|
||||||
exit->temperature = restart_backoff_counter(temperature);
|
exit->temperature = restart_backoff_counter(temperature);
|
||||||
if (optimized < 0) {
|
if (optimized < 0) {
|
||||||
Py_DECREF(current_executor);
|
|
||||||
tstate->previous_executor = Py_None;
|
|
||||||
GOTO_UNWIND();
|
GOTO_UNWIND();
|
||||||
}
|
}
|
||||||
tstate->previous_executor = (PyObject *)current_executor;
|
tstate->previous_executor = (PyObject *)current_executor;
|
||||||
|
@ -5437,8 +5435,6 @@
|
||||||
if (optimized <= 0) {
|
if (optimized <= 0) {
|
||||||
exit->temperature = restart_backoff_counter(exit->temperature);
|
exit->temperature = restart_backoff_counter(exit->temperature);
|
||||||
if (optimized < 0) {
|
if (optimized < 0) {
|
||||||
Py_DECREF(current_executor);
|
|
||||||
tstate->previous_executor = Py_None;
|
|
||||||
GOTO_UNWIND();
|
GOTO_UNWIND();
|
||||||
}
|
}
|
||||||
GOTO_TIER_ONE(target);
|
GOTO_TIER_ONE(target);
|
||||||
|
|
Loading…
Reference in New Issue