Skip to content

Commit 94639f6

Browse files
authored
pythongh-126240: handle NULL returned by _Py_asdl_expr_seq_new (python#126241)
check return value of `_Py_asdl_expr_seq_new`
1 parent 0141521 commit 94639f6

File tree

1 file changed

+9
-0
lines changed

1 file changed

+9
-0
lines changed

Parser/action_helpers.c

+9
Original file line numberDiff line numberDiff line change
@@ -1128,6 +1128,9 @@ expr_ty _PyPegen_collect_call_seqs(Parser *p, asdl_expr_seq *a, asdl_seq *b,
11281128
}
11291129

11301130
asdl_expr_seq *args = _Py_asdl_expr_seq_new(total_len, arena);
1131+
if (args == NULL) {
1132+
return NULL;
1133+
}
11311134

11321135
Py_ssize_t i = 0;
11331136
for (i = 0; i < args_len; i++) {
@@ -1298,6 +1301,9 @@ unpack_top_level_joined_strs(Parser *p, asdl_expr_seq *raw_expressions)
12981301
}
12991302

13001303
asdl_expr_seq *expressions = _Py_asdl_expr_seq_new(req_size, p->arena);
1304+
if (expressions == NULL) {
1305+
return NULL;
1306+
}
13011307

13021308
Py_ssize_t raw_index, req_index = 0;
13031309
for (raw_index = 0; raw_index < raw_size; raw_index++) {
@@ -1490,6 +1496,9 @@ expr_ty _PyPegen_formatted_value(Parser *p, expr_ty expression, Token *debug, Re
14901496
}
14911497

14921498
asdl_expr_seq *values = _Py_asdl_expr_seq_new(2, arena);
1499+
if (values == NULL) {
1500+
return NULL;
1501+
}
14931502
asdl_seq_SET(values, 0, debug_text);
14941503
asdl_seq_SET(values, 1, formatted_value);
14951504
return _PyAST_JoinedStr(values, lineno, col_offset, debug_end_line, debug_end_offset, p->arena);

0 commit comments

Comments
 (0)