https://github.com/python/cpython/commit/80042384b477519ee2b137a841b5a825675bedf5
commit: 80042384b477519ee2b137a841b5a825675bedf5
branch: 3.13
author: Miss Islington (bot) <[email protected]>
committer: sobolevn <[email protected]>
date: 2024-10-31T14:57:11Z
summary:

[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 94639f6b7182c2e1a82f2f907b03b5b15202acfa)

Co-authored-by: Bénédikt Tran <[email protected]>

files:
M Parser/action_helpers.c

diff --git a/Parser/action_helpers.c b/Parser/action_helpers.c
index 34f744516c1f30..8dfc919da71b5a 100644
--- a/Parser/action_helpers.c
+++ b/Parser/action_helpers.c
@@ -1120,6 +1120,9 @@ expr_ty _PyPegen_collect_call_seqs(Parser *p, 
asdl_expr_seq *a, asdl_seq *b,
     }
 
     asdl_expr_seq *args = _Py_asdl_expr_seq_new(total_len, arena);
+    if (args == NULL) {
+        return NULL;
+    }
 
     Py_ssize_t i = 0;
     for (i = 0; i < args_len; i++) {
@@ -1290,6 +1293,9 @@ unpack_top_level_joined_strs(Parser *p, asdl_expr_seq 
*raw_expressions)
     }
 
     asdl_expr_seq *expressions = _Py_asdl_expr_seq_new(req_size, p->arena);
+    if (expressions == NULL) {
+        return NULL;
+    }
 
     Py_ssize_t raw_index, req_index = 0;
     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
         }
 
         asdl_expr_seq *values = _Py_asdl_expr_seq_new(2, arena);
+        if (values == NULL) {
+            return NULL;
+        }
         asdl_seq_SET(values, 0, debug_text);
         asdl_seq_SET(values, 1, formatted_value);
         return _PyAST_JoinedStr(values, lineno, col_offset, debug_end_line, 
debug_end_offset, p->arena);

_______________________________________________
Python-checkins mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mailman3/lists/python-checkins.python.org/
Member address: [email protected]

Reply via email to