Skip to content

Commit cce8cb3

Browse files
Add test for enter_executor invalid memory read
1 parent fee7782 commit cce8cb3

File tree

1 file changed

+32
-0
lines changed

1 file changed

+32
-0
lines changed

Lib/test/test_capi/test_opt.py

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2662,6 +2662,38 @@ def f():
26622662
f" {executor} at offset {idx} rather"
26632663
f" than expected _EXIT_TRACE")
26642664

2665+
def test_enter_executor_valid_op_arg(self):
2666+
script_helper.assert_python_ok("-c", textwrap.dedent("""
2667+
import sys
2668+
sys.setrecursionlimit(30) # reduce time of the run
2669+
2670+
str_v1 = ''
2671+
tuple_v2 = (None, None, None, None, None)
2672+
small_int_v3 = 4
2673+
2674+
def f1():
2675+
2676+
for _ in range(10):
2677+
abs(0)
2678+
2679+
tuple_v2[small_int_v3]
2680+
tuple_v2[small_int_v3]
2681+
tuple_v2[small_int_v3]
2682+
2683+
def recursive_wrapper_4569():
2684+
str_v1 > str_v1
2685+
str_v1 > str_v1
2686+
str_v1 > str_v1
2687+
recursive_wrapper_4569()
2688+
2689+
recursive_wrapper_4569()
2690+
2691+
for i_f1 in range(19000):
2692+
try:
2693+
f1()
2694+
except RecursionError:
2695+
pass
2696+
"""))
26652697

26662698

26672699
def global_identity(x):

0 commit comments

Comments
 (0)