texinfo-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

branch master updated: * tp/Texinfo/XS/main/customization_options.c (opt


From: Patrice Dumas
Subject: branch master updated: * tp/Texinfo/XS/main/customization_options.c (options_list_add_option_number, copy_options_list): add an argument to avoid checking for duplicates in options_list_add_option_number is argument is set to 0. Update callers.
Date: Mon, 28 Oct 2024 14:25:32 -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 87de9bb2c6 * tp/Texinfo/XS/main/customization_options.c 
(options_list_add_option_number, copy_options_list): add an argument to avoid 
checking for duplicates in options_list_add_option_number is argument is set to 
0.  Update callers.
87de9bb2c6 is described below

commit 87de9bb2c6490463ba10a5a3cd94c9bffe8c9abb
Author: Patrice Dumas <pertusus@free.fr>
AuthorDate: Mon Oct 28 19:25:20 2024 +0100

    * tp/Texinfo/XS/main/customization_options.c
    (options_list_add_option_number, copy_options_list): add an argument
    to avoid checking for duplicates in options_list_add_option_number is
    argument is set to 0.  Update callers.
---
 ChangeLog                                       |  7 ++++++
 tp/Texinfo/XS/convert/converter.c               |  2 +-
 tp/Texinfo/XS/convert/get_converter_perl_info.c |  4 ++--
 tp/Texinfo/XS/convert/texinfo.c                 |  4 ++--
 tp/Texinfo/XS/main/customization_options.c      | 25 +++++++++++--------
 tp/Texinfo/XS/main/customization_options.h      |  4 ++--
 tp/Texinfo/XS/main/options_defaults.c           | 32 ++++++++++++-------------
 tp/maintain/regenerate_C_options_info.pl        |  2 +-
 8 files changed, 46 insertions(+), 34 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 48d4a00f5e..d4ae700bb7 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2024-10-28  Patrice Dumas  <pertusus@free.fr>
+
+       * tp/Texinfo/XS/main/customization_options.c
+       (options_list_add_option_number, copy_options_list): add an argument
+       to avoid checking for duplicates in options_list_add_option_number is
+       argument is set to 0.  Update callers.
+
 2024-10-28  Patrice Dumas  <pertusus@free.fr>
 
        * tp/Texinfo/XS/main/customization_options.c
diff --git a/tp/Texinfo/XS/convert/converter.c 
b/tp/Texinfo/XS/convert/converter.c
index 9e16bd685b..ef90ed4a92 100644
--- a/tp/Texinfo/XS/convert/converter.c
+++ b/tp/Texinfo/XS/convert/converter.c
@@ -390,7 +390,7 @@ copy_converter_initialization_info 
(CONVERTER_INITIALIZATION_INFO *dst_info,
   copy_strings (&dst_info->non_valid_customization,
                 &src_info->non_valid_customization);
 
-  copy_options_list (&dst_info->conf, &src_info->conf);
+  copy_options_list (&dst_info->conf, &src_info->conf, 1);
 }
 
 /* Next five functions are not called from Perl as the Perl equivalent
diff --git a/tp/Texinfo/XS/convert/get_converter_perl_info.c 
b/tp/Texinfo/XS/convert/get_converter_perl_info.c
index ae5dbcd1e9..e361c7acac 100644
--- a/tp/Texinfo/XS/convert/get_converter_perl_info.c
+++ b/tp/Texinfo/XS/convert/get_converter_perl_info.c
@@ -246,12 +246,12 @@ get_converter_info_from_sv (SV *conf_sv, const char 
*class_name,
               int status = get_sv_option (option, value_sv, 0,
                                       initialization_info->conf.options,
                                       converter);
-              /* TODO since the key cannot be duplicated, there is no need
+              /* Since the key cannot be duplicated, there is no need
                  to check if the option->number is already in the
                  initialization_info->conf list */
               if (!status)
                 options_list_add_option_number (&initialization_info->conf,
-                                                option->number);
+                                                option->number, 0);
               else
                /* can only be an error of bad data value_sv, as the options
                   cannot be set already */
diff --git a/tp/Texinfo/XS/convert/texinfo.c b/tp/Texinfo/XS/convert/texinfo.c
index e6b55c3d56..88cf571753 100644
--- a/tp/Texinfo/XS/convert/texinfo.c
+++ b/tp/Texinfo/XS/convert/texinfo.c
@@ -86,7 +86,7 @@ txi_converter_format_defaults (const char *format_str,
   CONVERTER_INITIALIZATION_INFO *format_defaults;
 
   if (customizations)
-    copy_options_list (&conf->conf, customizations);
+    copy_options_list (&conf->conf, customizations, 0);
 
   format_defaults = converter_defaults (converter_format, conf);
 
@@ -376,7 +376,7 @@ txi_converter_setup (const char *format_str,
 
   if (customizations)
     {
-      copy_options_list (&conf->conf, customizations);
+      copy_options_list (&conf->conf, customizations, 1);
     }
 
   if (conf->conf.options->TEST.o.integer <= 0
diff --git a/tp/Texinfo/XS/main/customization_options.c 
b/tp/Texinfo/XS/main/customization_options.c
index 767423f37a..d162e6bf16 100644
--- a/tp/Texinfo/XS/main/customization_options.c
+++ b/tp/Texinfo/XS/main/customization_options.c
@@ -427,15 +427,18 @@ free_options_list (OPTIONS_LIST *options_list)
 
 void
 options_list_add_option_number (OPTIONS_LIST *options_list,
-                                size_t number)
+                                size_t number, int check_duplicates)
 {
   size_t i;
 
-  for (i = 0; i < options_list->number; i++)
+  if (check_duplicates)
     {
-      size_t option_nr = options_list->list[i];
-      if (number == option_nr)
-        return;
+      for (i = 0; i < options_list->number; i++)
+        {
+          size_t option_nr = options_list->list[i];
+          if (number == option_nr)
+            return;
+        }
     }
 
   if (options_list->number >= options_list->space)
@@ -456,7 +459,7 @@ options_list_add_option_name (OPTIONS_LIST *options_list,
   if (!option)
     return 0;
 
-  options_list_add_option_number (options_list, option->number);
+  options_list_add_option_number (options_list, option->number, 1);
 
   return option;
 }
@@ -491,7 +494,8 @@ copy_options_list_options (OPTIONS *options, OPTION 
**sorted_options,
 }
 
 void
-copy_options_list (OPTIONS_LIST *options_list, const OPTIONS_LIST *options_src)
+copy_options_list (OPTIONS_LIST *options_list, const OPTIONS_LIST *options_src,
+                   int check_duplicates)
 {
   copy_options_list_options (options_list->options,
                              options_list->sorted_options,
@@ -500,7 +504,8 @@ copy_options_list (OPTIONS_LIST *options_list, const 
OPTIONS_LIST *options_src)
     {
       size_t i;
       for (i = 0; i < options_src->number; i++)
-        options_list_add_option_number (options_list, options_src->list[i]);
+        options_list_add_option_number (options_list, options_src->list[i],
+                                        check_duplicates);
     }
 }
 
@@ -544,7 +549,7 @@ add_new_button_option (OPTIONS_LIST *options_list, const 
char *option_name,
   if (!option || option->type != GOT_buttons)
     return 0;
 
-  options_list_add_option_number (options_list, option->number);
+  options_list_add_option_number (options_list, option->number, 1);
 
   if (option->o.buttons)
     options_list->options->BIT_user_function_number
@@ -573,7 +578,7 @@ add_option_strlist_value (OPTIONS_LIST *options_list,
       && option->type != GOT_file_string_list)
     return 0;
 
-  options_list_add_option_number (options_list, option->number);
+  options_list_add_option_number (options_list, option->number, 1);
 
   clear_option (option);
 
diff --git a/tp/Texinfo/XS/main/customization_options.h 
b/tp/Texinfo/XS/main/customization_options.h
index 4781ca88e0..238fb0b419 100644
--- a/tp/Texinfo/XS/main/customization_options.h
+++ b/tp/Texinfo/XS/main/customization_options.h
@@ -59,9 +59,9 @@ void copy_option (OPTION *destination, const OPTION *source);
 void initialize_options_list (OPTIONS_LIST *options_list);
 void free_options_list (OPTIONS_LIST *options_list);
 void options_list_add_option_number (OPTIONS_LIST *options_list,
-                                     size_t number);
+                                     size_t number, int check_duplicates);
 void copy_options_list (OPTIONS_LIST *options_list,
-                        const OPTIONS_LIST *options_src);
+                        const OPTIONS_LIST *options_src, int check_duplicates);
 void copy_options_list_set_configured (OPTIONS *options,
                                        OPTION **sorted_options,
                                        OPTIONS_LIST *options_list,
diff --git a/tp/Texinfo/XS/main/options_defaults.c 
b/tp/Texinfo/XS/main/options_defaults.c
index ce09daf4ae..5b496ded22 100644
--- a/tp/Texinfo/XS/main/options_defaults.c
+++ b/tp/Texinfo/XS/main/options_defaults.c
@@ -26,19 +26,19 @@ add_array_cmdline_options_defaults (OPTIONS_LIST 
*options_list)
   OPTION *option;
 
   option = find_option_string (options_list->sorted_options, "CSS_FILES");
-  options_list_add_option_number (options_list, option->number);
+  options_list_add_option_number (options_list, option->number, 0);
   clear_option (option);
   option = find_option_string (options_list->sorted_options, "CSS_REFS");
-  options_list_add_option_number (options_list, option->number);
+  options_list_add_option_number (options_list, option->number, 0);
   clear_option (option);
   option = find_option_string (options_list->sorted_options, 
"EXPANDED_FORMATS");
-  options_list_add_option_number (options_list, option->number);
+  options_list_add_option_number (options_list, option->number, 0);
   clear_option (option);
   option = find_option_string (options_list->sorted_options, 
"INCLUDE_DIRECTORIES");
-  options_list_add_option_number (options_list, option->number);
+  options_list_add_option_number (options_list, option->number, 0);
   clear_option (option);
   option = find_option_string (options_list->sorted_options, 
"TEXINFO_LANGUAGE_DIRECTORIES");
-  options_list_add_option_number (options_list, option->number);
+  options_list_add_option_number (options_list, option->number, 0);
   clear_option (option);
 }
 
@@ -397,37 +397,37 @@ add_converter_other_options_defaults (OPTIONS_LIST 
*options_list)
   OPTION *option;
 
   option = find_option_string (options_list->sorted_options, "LINKS_BUTTONS");
-  options_list_add_option_number (options_list, option->number);
+  options_list_add_option_number (options_list, option->number, 0);
   clear_option (option);
   option = find_option_string (options_list->sorted_options, "TOP_BUTTONS");
-  options_list_add_option_number (options_list, option->number);
+  options_list_add_option_number (options_list, option->number, 0);
   clear_option (option);
   option = find_option_string (options_list->sorted_options, 
"TOP_FOOTER_BUTTONS");
-  options_list_add_option_number (options_list, option->number);
+  options_list_add_option_number (options_list, option->number, 0);
   clear_option (option);
   option = find_option_string (options_list->sorted_options, 
"SECTION_BUTTONS");
-  options_list_add_option_number (options_list, option->number);
+  options_list_add_option_number (options_list, option->number, 0);
   clear_option (option);
   option = find_option_string (options_list->sorted_options, 
"CHAPTER_FOOTER_BUTTONS");
-  options_list_add_option_number (options_list, option->number);
+  options_list_add_option_number (options_list, option->number, 0);
   clear_option (option);
   option = find_option_string (options_list->sorted_options, 
"SECTION_FOOTER_BUTTONS");
-  options_list_add_option_number (options_list, option->number);
+  options_list_add_option_number (options_list, option->number, 0);
   clear_option (option);
   option = find_option_string (options_list->sorted_options, 
"NODE_FOOTER_BUTTONS");
-  options_list_add_option_number (options_list, option->number);
+  options_list_add_option_number (options_list, option->number, 0);
   clear_option (option);
   option = find_option_string (options_list->sorted_options, "MISC_BUTTONS");
-  options_list_add_option_number (options_list, option->number);
+  options_list_add_option_number (options_list, option->number, 0);
   clear_option (option);
   option = find_option_string (options_list->sorted_options, 
"CHAPTER_BUTTONS");
-  options_list_add_option_number (options_list, option->number);
+  options_list_add_option_number (options_list, option->number, 0);
   clear_option (option);
   option = find_option_string (options_list->sorted_options, "ACTIVE_ICONS");
-  options_list_add_option_number (options_list, option->number);
+  options_list_add_option_number (options_list, option->number, 0);
   clear_option (option);
   option = find_option_string (options_list->sorted_options, "PASSIVE_ICONS");
-  options_list_add_option_number (options_list, option->number);
+  options_list_add_option_number (options_list, option->number, 0);
   clear_option (option);
 }
 
diff --git a/tp/maintain/regenerate_C_options_info.pl 
b/tp/maintain/regenerate_C_options_info.pl
index a7aa567b4d..41174492c1 100755
--- a/tp/maintain/regenerate_C_options_info.pl
+++ b/tp/maintain/regenerate_C_options_info.pl
@@ -419,7 +419,7 @@ foreach my $category (sort(keys(%option_categories))) {
         "  option = find_option_string (options_list->sorted_options, "
                                                  ."\"$option\");\n";
       print ODCF
-        "  options_list_add_option_number (options_list, option->number);\n";
+        "  options_list_add_option_number (options_list, option->number, 
0);\n";
       print ODCF "  clear_option (option);\n";
     }
   }



reply via email to

[Prev in Thread] Current Thread [Next in Thread]