[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[no subject]
From: |
Patrice Dumas |
Date: |
Sun, 29 Sep 2024 04:51:49 -0400 (EDT) |
branch: master
commit 322d0ab4163ef131e86f293757bb64b0bafc4f5e
Author: Patrice Dumas <pertusus@free.fr>
AuthorDate: Mon Jun 10 19:32:03 2024 +0200
* tp/Texinfo/XS/main/build_perl_info.c (store_info_element): check if
element to store is 0 in store_info_element. Update callers.
---
ChangeLog | 5 +++++
tp/Texinfo/XS/main/build_perl_info.c | 29 ++++++++++++++---------------
2 files changed, 19 insertions(+), 15 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index 3db48c09d3..0a5b72dc16 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2024-06-10 Patrice Dumas <pertusus@free.fr>
+
+ * tp/Texinfo/XS/main/build_perl_info.c (store_info_element): check if
+ element to store is 0 in store_info_element. Update callers.
+
2024-06-10 Patrice Dumas <pertusus@free.fr>
* tp/Texinfo/XS/main/build_perl_info.c (store_additional_info)
diff --git a/tp/Texinfo/XS/main/build_perl_info.c
b/tp/Texinfo/XS/main/build_perl_info.c
index 608f98ef45..4a350032d1 100644
--- a/tp/Texinfo/XS/main/build_perl_info.c
+++ b/tp/Texinfo/XS/main/build_perl_info.c
@@ -559,6 +559,9 @@ store_info_element (ELEMENT *e, ELEMENT *info_element,
const char *type_key,
{
dTHX;
+ if (!info_element)
+ return;
+
if (!info_element->hv || !avoid_recursion)
element_to_perl_hash (info_element, avoid_recursion);
@@ -695,10 +698,9 @@ element_to_perl_hash (ELEMENT *e, int avoid_recursion)
if (e->type == ET_block_line_arg || e->type == ET_line_arg)
{
- ELEMENT *f = e->elt_info[eit_comment_at_end];
- if (f)
- store_info_element (e, f, "info", "comment_at_end",
- avoid_recursion, &info_hv);
+ store_info_element (e, e->elt_info[eit_comment_at_end],
+ "info", "comment_at_end",
+ avoid_recursion, &info_hv);
}
if (e->cmd)
@@ -711,10 +713,9 @@ element_to_perl_hash (ELEMENT *e, int avoid_recursion)
if (type_data[e->type].flags & TF_braces)
{
- ELEMENT *f = e->elt_info[eit_spaces_after_cmd_before_arg];
- if (f)
- store_info_element (e, f, "info", "spaces_after_cmd_before_arg",
- avoid_recursion, &info_hv);
+ store_info_element (e, e->elt_info[eit_spaces_after_cmd_before_arg],
+ "info", "spaces_after_cmd_before_arg",
+ avoid_recursion, &info_hv);
}
if (type_data[e->type].flags & TF_spaces_before)
@@ -725,17 +726,15 @@ element_to_perl_hash (ELEMENT *e, int avoid_recursion)
else
f = e->elt_info[eit_brace_content_spaces_before_argument];
- if (f)
- store_info_element (e, f, "info", "spaces_before_argument",
- avoid_recursion, &info_hv);
+ store_info_element (e, f, "info", "spaces_before_argument",
+ avoid_recursion, &info_hv);
}
if (type_data[e->type].flags & TF_spaces_after)
{
- ELEMENT *f = e->elt_info[eit_spaces_after_argument];
- if (f)
- store_info_element (e, f, "info", "spaces_after_argument",
- avoid_recursion, &info_hv);
+ store_info_element (e, e->elt_info[eit_spaces_after_argument],
+ "info", "spaces_after_argument",
+ avoid_recursion, &info_hv);
}
if (e->cmd || type_data[e->type].flags & TF_macro_call)