[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
branch master updated: * tp/Texinfo/XS/convert/convert_html.c (html_free
From: |
Patrice Dumas |
Subject: |
branch master updated: * tp/Texinfo/XS/convert/convert_html.c (html_free_converter), tp/Texinfo/XS/main/api_to_perl.c, tp/Texinfo/XS/main/document.c (remove_document_descriptor), tp/Texinfo/XS/main/tree.c (destroy_element): inline unregister_perl_tree_element, unregister_document_hv and unregister_perl_tree_element calling unregister_perl_data. |
Date: |
Thu, 03 Oct 2024 13:47:09 -0400 |
This is an automated email from the git hooks/post-receive script.
pertusus pushed a commit to branch master
in repository texinfo.
The following commit(s) were added to refs/heads/master by this push:
new 0a8d38547a * tp/Texinfo/XS/convert/convert_html.c
(html_free_converter), tp/Texinfo/XS/main/api_to_perl.c,
tp/Texinfo/XS/main/document.c (remove_document_descriptor),
tp/Texinfo/XS/main/tree.c (destroy_element): inline
unregister_perl_tree_element, unregister_document_hv and
unregister_perl_tree_element calling unregister_perl_data.
0a8d38547a is described below
commit 0a8d38547a872fb1ebf2b1be5ebdd2a5df252922
Author: Patrice Dumas <pertusus@free.fr>
AuthorDate: Tue Aug 6 06:39:35 2024 +0200
* tp/Texinfo/XS/convert/convert_html.c (html_free_converter),
tp/Texinfo/XS/main/api_to_perl.c, tp/Texinfo/XS/main/document.c
(remove_document_descriptor), tp/Texinfo/XS/main/tree.c
(destroy_element): inline unregister_perl_tree_element,
unregister_document_hv and unregister_perl_tree_element calling
unregister_perl_data.
---
ChangeLog | 9 +++++++++
tp/Texinfo/XS/convert/convert_html.c | 6 +++++-
tp/Texinfo/XS/main/api_to_perl.c | 39 ------------------------------------
tp/Texinfo/XS/main/api_to_perl.h | 4 ----
tp/Texinfo/XS/main/document.c | 6 +++++-
tp/Texinfo/XS/main/tree.c | 7 ++++++-
6 files changed, 25 insertions(+), 46 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index af7344079c..e2236701c8 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2024-08-06 Patrice Dumas <pertusus@free.fr>
+
+ * tp/Texinfo/XS/convert/convert_html.c (html_free_converter),
+ tp/Texinfo/XS/main/api_to_perl.c, tp/Texinfo/XS/main/document.c
+ (remove_document_descriptor), tp/Texinfo/XS/main/tree.c
+ (destroy_element): inline unregister_perl_tree_element,
+ unregister_document_hv and unregister_perl_tree_element calling
+ unregister_perl_data.
+
2024-08-05 Patrice Dumas <pertusus@free.fr>
* tp/Texinfo/XS/convert/ConvertXS.xs (html_converter_customize),
diff --git a/tp/Texinfo/XS/convert/convert_html.c
b/tp/Texinfo/XS/convert/convert_html.c
index 080acb6109..92ecda0dee 100644
--- a/tp/Texinfo/XS/convert/convert_html.c
+++ b/tp/Texinfo/XS/convert/convert_html.c
@@ -19710,7 +19710,11 @@ html_free_converter (CONVERTER *self)
self->registered_ids = 0;
#endif
- unregister_html_converter_perl_hv (self);
+ if (self->pl_info_hv)
+ {
+ unregister_perl_data (self->pl_info_hv);
+ self->pl_info_hv = 0;
+ }
html_free_files_source_info (&self->files_source_info);
diff --git a/tp/Texinfo/XS/main/api_to_perl.c b/tp/Texinfo/XS/main/api_to_perl.c
index 2f07a6da48..6e7650a5cd 100644
--- a/tp/Texinfo/XS/main/api_to_perl.c
+++ b/tp/Texinfo/XS/main/api_to_perl.c
@@ -47,20 +47,6 @@ get_refcount (void *sv)
return SvREFCNT ((SV *) sv);
}
-/* to be called when a tree element is destroyed, to remove the reference
- of the association with the C tree */
-void
-unregister_perl_tree_element (ELEMENT *e)
-{
- dTHX;
-
- if (e->hv)
- {
- SvREFCNT_dec ((SV *) e->hv);
- e->hv = 0;
- }
-}
-
void
unregister_perl_data (void *sv)
{
@@ -126,28 +112,3 @@ croak_message (char *message)
croak ("%s\n", message);
}
-void
-unregister_document_hv (DOCUMENT *document)
-{
- dTHX;
-
- if (document->hv)
- {
- SvREFCNT_dec ((SV *)document->hv);
- document->hv = 0;
- }
-}
-
-/* HTML specific */
-void
-unregister_html_converter_perl_hv (CONVERTER *converter)
-{
- dTHX;
-
- if (converter->pl_info_hv)
- {
- SvREFCNT_dec ((SV *)converter->pl_info_hv);
- converter->pl_info_hv = 0;
- }
-}
-
diff --git a/tp/Texinfo/XS/main/api_to_perl.h b/tp/Texinfo/XS/main/api_to_perl.h
index f13670ec26..966e751d62 100644
--- a/tp/Texinfo/XS/main/api_to_perl.h
+++ b/tp/Texinfo/XS/main/api_to_perl.h
@@ -7,12 +7,8 @@
int get_refcount (void *sv);
-void unregister_perl_tree_element (ELEMENT *e);
-void unregister_document_hv (DOCUMENT *document);
void unregister_perl_data (void *sv);
void register_perl_data (void *sv);
-/* HTML specific */
-void unregister_html_converter_perl_hv (CONVERTER *converter);
void call_switch_to_global_locale (void);
void call_sync_locale (void);
diff --git a/tp/Texinfo/XS/main/document.c b/tp/Texinfo/XS/main/document.c
index 87d34fb727..d328ef51b0 100644
--- a/tp/Texinfo/XS/main/document.c
+++ b/tp/Texinfo/XS/main/document.c
@@ -479,7 +479,11 @@ remove_document_descriptor (size_t document_descriptor)
if (document->small_strings)
destroy_strings_list (document->small_strings);
- unregister_document_hv (document);
+ if (document->hv)
+ {
+ unregister_perl_data (document->hv);
+ document->hv = 0;
+ }
/*
fprintf (stderr, "REMOVE %zu %p\n", document_descriptor, document);
diff --git a/tp/Texinfo/XS/main/tree.c b/tp/Texinfo/XS/main/tree.c
index 841ec47ee8..086ef1bd54 100644
--- a/tp/Texinfo/XS/main/tree.c
+++ b/tp/Texinfo/XS/main/tree.c
@@ -256,7 +256,12 @@ destroy_element_empty_source_mark_list (ELEMENT *e)
void
destroy_element (ELEMENT *e)
{
- unregister_perl_tree_element (e);
+ /* remove the reference of the association with the C tree */
+ if (e->hv)
+ {
+ unregister_perl_data (e->hv);
+ e->hv = 0;
+ }
if (e->source_mark_list)
destroy_source_mark_list (e->source_mark_list);
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- branch master updated: * tp/Texinfo/XS/convert/convert_html.c (html_free_converter), tp/Texinfo/XS/main/api_to_perl.c, tp/Texinfo/XS/main/document.c (remove_document_descriptor), tp/Texinfo/XS/main/tree.c (destroy_element): inline unregister_perl_tree_element, unregister_document_hv and unregister_perl_tree_element calling unregister_perl_data.,
Patrice Dumas <=