Skip to content

Commit 8004238

Browse files
[3.13] gh-126240: handle NULL returned by _Py_asdl_expr_seq_new (GH-126241) (#126243)
gh-126240: handle `NULL` returned by `_Py_asdl_expr_seq_new` (GH-126241) check return value of `_Py_asdl_expr_seq_new` (cherry picked from commit 94639f6) Co-authored-by: Bénédikt Tran <[email protected]>
1 parent 89664d4 commit 8004238

File tree

1 file changed

+9
-0
lines changed

1 file changed

+9
-0
lines changed

Parser/action_helpers.c

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1120,6 +1120,9 @@ expr_ty _PyPegen_collect_call_seqs(Parser *p, asdl_expr_seq *a, asdl_seq *b,
11201120
}
11211121

11221122
asdl_expr_seq *args = _Py_asdl_expr_seq_new(total_len, arena);
1123+
if (args == NULL) {
1124+
return NULL;
1125+
}
11231126

11241127
Py_ssize_t i = 0;
11251128
for (i = 0; i < args_len; i++) {
@@ -1290,6 +1293,9 @@ unpack_top_level_joined_strs(Parser *p, asdl_expr_seq *raw_expressions)
12901293
}
12911294

12921295
asdl_expr_seq *expressions = _Py_asdl_expr_seq_new(req_size, p->arena);
1296+
if (expressions == NULL) {
1297+
return NULL;
1298+
}
12931299

12941300
Py_ssize_t raw_index, req_index = 0;
12951301
for (raw_index = 0; raw_index < raw_size; raw_index++) {
@@ -1482,6 +1488,9 @@ expr_ty _PyPegen_formatted_value(Parser *p, expr_ty expression, Token *debug, Re
14821488
}
14831489

14841490
asdl_expr_seq *values = _Py_asdl_expr_seq_new(2, arena);
1491+
if (values == NULL) {
1492+
return NULL;
1493+
}
14851494
asdl_seq_SET(values, 0, debug_text);
14861495
asdl_seq_SET(values, 1, formatted_value);
14871496
return _PyAST_JoinedStr(values, lineno, col_offset, debug_end_line, debug_end_offset, p->arena);

0 commit comments

Comments
 (0)