texinfo-commits
[Top][All Lists]
Advanced

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

branch master updated: Pass created directory charcter string for error


From: Patrice Dumas
Subject: branch master updated: Pass created directory charcter string for error messages
Date: Sat, 05 Mar 2022 11:37:45 -0500

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 908f3b59b9 Pass created directory charcter string for error messages
908f3b59b9 is described below

commit 908f3b59b9154b1e5ed9c557982869fed2ebe650
Author: Patrice Dumas <pertusus@free.fr>
AuthorDate: Sat Mar 5 17:37:30 2022 +0100

    Pass created directory charcter string for error messages
    
    * tp/Texinfo/Convert/Converter.pm (create_destination_directory):
    add an argument for created directory name as character string for
    use in error message.
---
 ChangeLog                        |  8 ++++++++
 tp/DebugTexinfo/DebugTree.pm     |  5 +++--
 tp/TODO                          |  4 ----
 tp/Texinfo/Convert/Converter.pm  | 36 ++++++++++++++++++++----------------
 tp/Texinfo/Convert/DocBook.pm    |  5 +++--
 tp/Texinfo/Convert/HTML.pm       | 19 ++++++++++---------
 tp/Texinfo/Convert/IXIN.pm       |  5 +++--
 tp/Texinfo/Convert/LaTeX.pm      |  5 +++--
 tp/Texinfo/Convert/TexinfoXML.pm |  5 +++--
 9 files changed, 53 insertions(+), 39 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 4b4dcc1e0c..b41dcd7212 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2022-03-05  Patrice Dumas  <pertusus@free.fr>
+
+       Pass created directory charcter string for error messages
+
+       * tp/Texinfo/Convert/Converter.pm (create_destination_directory):
+       add an argument for created directory name as character string for
+       use in error message.
+
 2022-03-05  Patrice Dumas  <pertusus@free.fr>
 
        Encode more file names for epub
diff --git a/tp/DebugTexinfo/DebugTree.pm b/tp/DebugTexinfo/DebugTree.pm
index a58d025643..9f390bae77 100644
--- a/tp/DebugTexinfo/DebugTree.pm
+++ b/tp/DebugTexinfo/DebugTree.pm
@@ -84,8 +84,9 @@ sub output($$)
 
   my ($encoded_destination_directory, $dir_encoding)
     = $self->encoded_output_file_name($destination_directory);
-  my ($succeeded, $created_directory)
-    = $self->create_destination_directory($encoded_destination_directory);
+  my $succeeded
+    = $self->create_destination_directory($encoded_destination_directory,
+                                          $destination_directory);
   return undef unless $succeeded;
 
   my $fh;
diff --git a/tp/TODO b/tp/TODO
index 2ea2715a3a..9b72c338f2 100644
--- a/tp/TODO
+++ b/tp/TODO
@@ -22,10 +22,6 @@ for @example args, use *-user as class?
 Test of init/highlight_syntax.pm with non ascii characters in highlighted
 @example contents.
 
-Convert/Converter.pm
-move create_destination_directory error message out of 
create_destination_directory
-or pass directory as a character string, or encoding?
-
 
 bytes.  To check that they can never be upgraded + document
 * texi2any.pl
diff --git a/tp/Texinfo/Convert/Converter.pm b/tp/Texinfo/Convert/Converter.pm
index 37804732e5..df9d68d701 100644
--- a/tp/Texinfo/Convert/Converter.pm
+++ b/tp/Texinfo/Convert/Converter.pm
@@ -322,8 +322,9 @@ sub output($$)
                   $document_name) = $self->determine_files_and_directory();
   my ($encoded_destination_directory, $dir_encoding)
     = $self->encoded_output_file_name($destination_directory);
-  my ($succeeded, $created_directory)
-    = $self->create_destination_directory($encoded_destination_directory);
+  my $succeeded
+    = $self->create_destination_directory($encoded_destination_directory,
+                                          $destination_directory);
   return undef unless $succeeded;
 
   if ($self->get_conf('USE_NODES')) {
@@ -352,8 +353,8 @@ sub output($$)
     if ($output_file ne '') {
       if ($self->get_conf('SPLIT')) {
         my $top_node_file_name = $self->top_node_filename($document_name);
-        if (defined($created_directory) and $created_directory ne '') {
-          $outfile_name = File::Spec->catfile($created_directory,
+        if (defined($destination_directory) and $destination_directory ne '') {
+          $outfile_name = File::Spec->catfile($destination_directory,
                                               $top_node_file_name);
         } else {
           $outfile_name = $top_node_file_name;
@@ -908,21 +909,22 @@ sub _set_tree_units_files($$$$$$)
   }
 }
 
-sub create_destination_directory($$)
+sub create_destination_directory($$$)
 {
   my $self = shift;
-  my $destination_directory = shift;
+  my $destination_directory_path = shift;
+  my $destination_directory_name = shift;
 
-  if (defined($destination_directory)
-      and ! -d $destination_directory) {
-    if (!mkdir($destination_directory, oct(755))) {
+  if (defined($destination_directory_path)
+      and ! -d $destination_directory_path) {
+    if (!mkdir($destination_directory_path, oct(755))) {
       $self->document_error($self, sprintf(__(
                                 "could not create directory `%s': %s"),
-                                          $destination_directory, $!));
-      return (0, $destination_directory);
+                                   $destination_directory_name, $!));
+      return 0;
     }
   }
-  return (1, $destination_directory);
+  return 1;
 }
 
 
@@ -1765,12 +1767,14 @@ calls C<convert_tree> on the elements.  If the optional 
I<$file_handler>
 is given in argument, the result are output in I<$file_handler>, otherwise
 the resulting string is returned.
 
-=item ($succeeded, $created_directory) = 
$converter->create_destination_directory($destination_directory)
+=item $succeeded = 
$converter->create_destination_directory($destination_directory_path, 
$destination_directory_name)
 X<C<create_destination_directory>>
 
-Create destination directory.  I<$succeeded> is true if the creation was
-successful or uneeded, false otherwise.  I<$created_directory> is the directory
-actually created, which should be the same as I<$destination_directory>.
+Create destination directory I<$destination_directory_path>.
+I<$destination_directory_path> should be a binary string, while
+I<$destination_directory_name> should be a character string, to be used in
+error messages.  I<$succeeded> is true if the creation was successful or
+uneeded, false otherwise.
 
 =item ($output_file, $destination_directory, $output_filename, $document_name, 
$input_basefile) = $converter->determine_files_and_directory($output_format)
 X<C<determine_files_and_directory>>
diff --git a/tp/Texinfo/Convert/DocBook.pm b/tp/Texinfo/Convert/DocBook.pm
index 5a58310a25..7fe3f1231d 100644
--- a/tp/Texinfo/Convert/DocBook.pm
+++ b/tp/Texinfo/Convert/DocBook.pm
@@ -308,8 +308,9 @@ sub output($$)
 
   my ($encoded_destination_directory, $dir_encoding)
     = $self->encoded_output_file_name($destination_directory);
-  my ($succeeded, $created_directory)
-    = $self->create_destination_directory($encoded_destination_directory);
+  my $succeeded
+    = $self->create_destination_directory($encoded_destination_directory,
+                                          $destination_directory);
   return undef unless $succeeded;
 
   my $fh;
diff --git a/tp/Texinfo/Convert/HTML.pm b/tp/Texinfo/Convert/HTML.pm
index 0198b17f94..bba4f1cfba 100644
--- a/tp/Texinfo/Convert/HTML.pm
+++ b/tp/Texinfo/Convert/HTML.pm
@@ -9335,8 +9335,9 @@ sub output($$)
               $document_name) = $self->determine_files_and_directory();
   my ($encoded_destination_directory, $dir_encoding)
     = $self->encoded_output_file_name($destination_directory);
-  my ($succeeded, $created_directory)
-    = $self->create_destination_directory($encoded_destination_directory);
+  my $succeeded
+    = $self->create_destination_directory($encoded_destination_directory,
+                                          $destination_directory);
   return undef unless $succeeded;
 
   # set for init files
@@ -9508,7 +9509,7 @@ sub output($$)
 
   if ($self->get_conf('FRAMES')) {
     my $status = &{$self->formatting_function('format_frame_files')}($self,
-                                                        $created_directory);
+                                                      $destination_directory);
     return undef if (!$status);
   }
 
@@ -9528,8 +9529,8 @@ sub output($$)
       my $no_page_output_filename;
       if ($self->get_conf('SPLIT')) {
         $no_page_output_filename = $self->top_node_filename($document_name);
-        if (defined($created_directory) and $created_directory ne '') {
-          $no_page_out_filepath = File::Spec->catfile($created_directory,
+        if (defined($destination_directory) and $destination_directory ne '') {
+          $no_page_out_filepath = File::Spec->catfile($destination_directory,
                                                     $no_page_output_filename);
         } else {
           $no_page_out_filepath = $no_page_output_filename;
@@ -9679,7 +9680,7 @@ sub output($$)
     }
     delete $self->{'current_filename'};
     if ($self->get_conf('INFO_JS_DIR')) {
-      my $jsdir = File::Spec->catdir($created_directory,
+      my $jsdir = File::Spec->catdir($destination_directory,
                                      $self->get_conf('INFO_JS_DIR'));
       if (!-d $jsdir) {
         if (-f $jsdir) {
@@ -9712,7 +9713,7 @@ sub output($$)
 
   my $jslicenses = $self->get_info('jslicenses');
   if ($jslicenses and scalar(%$jslicenses)) {
-    $self->_do_jslicenses_file($created_directory);
+    $self->_do_jslicenses_file($destination_directory);
   }
 
   my $finish_status = $self->run_stage_handlers($root, 'finish');
@@ -9749,8 +9750,8 @@ sub output($$)
           = 
&{$self->formatting_function('format_node_redirection_page')}($self,
                                                                          
$node);
         my $out_filename;
-        if (defined($created_directory) and $created_directory ne '') {
-          $out_filename = File::Spec->catfile($created_directory,
+        if (defined($destination_directory) and $destination_directory ne '') {
+          $out_filename = File::Spec->catfile($destination_directory,
                                               $node_filename);
         } else {
           $out_filename = $node_filename;
diff --git a/tp/Texinfo/Convert/IXIN.pm b/tp/Texinfo/Convert/IXIN.pm
index af925e42a4..8b8830a033 100644
--- a/tp/Texinfo/Convert/IXIN.pm
+++ b/tp/Texinfo/Convert/IXIN.pm
@@ -271,8 +271,9 @@ sub output_ixin($$)
 
   my ($encoded_destination_directory, $dir_encoding)
     = $self->encoded_output_file_name($destination_directory);
-  my ($succeeded, $created_directory)
-    = $self->create_destination_directory($encoded_destination_directory);
+  my $succeeded
+    = $self->create_destination_directory($encoded_destination_directory,
+                                          $destination_directory);
   return undef unless $succeeded;
 
   my $fh;
diff --git a/tp/Texinfo/Convert/LaTeX.pm b/tp/Texinfo/Convert/LaTeX.pm
index f75c2e2cd9..cf852c3ce3 100644
--- a/tp/Texinfo/Convert/LaTeX.pm
+++ b/tp/Texinfo/Convert/LaTeX.pm
@@ -917,8 +917,9 @@ sub output($$)
 
   my ($encoded_destination_directory, $dir_encoding)
     = $self->encoded_output_file_name($destination_directory);
-  my ($succeeded, $created_directory)
-    = $self->create_destination_directory($encoded_destination_directory);
+  my $succeeded
+    = $self->create_destination_directory($encoded_destination_directory,
+                                          $destination_directory);
   return undef unless $succeeded;
 
   my $fh;
diff --git a/tp/Texinfo/Convert/TexinfoXML.pm b/tp/Texinfo/Convert/TexinfoXML.pm
index 37e86bc542..28e5b1d6f3 100644
--- a/tp/Texinfo/Convert/TexinfoXML.pm
+++ b/tp/Texinfo/Convert/TexinfoXML.pm
@@ -430,8 +430,9 @@ sub output($$)
 
   my ($encoded_destination_directory, $dir_encoding)
     = $self->encoded_output_file_name($destination_directory);
-  my ($succeeded, $created_directory)
-    = $self->create_destination_directory($encoded_destination_directory);
+  my $succeeded
+    = $self->create_destination_directory($encoded_destination_directory,
+                                          $destination_directory);
   return undef unless $succeeded;
 
 



reply via email to

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