l10ntools/scripts/fast_merge.pl | 29 ++++++++++++++++------------- 1 file changed, 16 insertions(+), 13 deletions(-)
New commits: commit e0192b517564f43ea6a0f3ef5fe57def2bfd2a3c Author: David Tardon <dtar...@redhat.com> Date: Wed Jan 11 14:04:54 2012 +0100 fix writing of strings from the first module Signed-off-by: David Tardon <dtar...@redhat.com> diff --git a/l10ntools/scripts/fast_merge.pl b/l10ntools/scripts/fast_merge.pl index 5dc63cf..cc632e4 100644 --- a/l10ntools/scripts/fast_merge.pl +++ b/l10ntools/scripts/fast_merge.pl @@ -89,11 +89,10 @@ while( hasLines() ) } write_lines(); } -if( $#current+1 ne 0 ) +# write content of the last localize.sdf file +if( $#buffer ge 0 ) { - ( $path , $localize_file ) = make_paths(); - add_to_buffer(); - write_buffer( $path , $localize_file ); + write_buffer( $last_path , $last_localize_file ); } release_lock(); exit( 0 ); @@ -248,15 +247,14 @@ sub make_paths return ( $path , $localizeFile ); } + sub write_lines { if( $first_run ){ - add_to_buffer(); my( $path , $localize_file ) = make_paths(); $last_path = $path; $last_localize_file = $localize_file; - mkpath $path; - write_buffer( $path , $localize_file ); + add_to_buffer(); $first_run = ''; } else @@ -269,7 +267,6 @@ sub write_lines } else { - mkpath $path; write_buffer( $last_path , $last_localize_file ); add_to_buffer(); $last_path = $path; @@ -277,6 +274,11 @@ sub write_lines } } } + +# Adds all lines that contain strings from one source file from every input file. +# TODO: Would it not be better to add lines for all files from a directory (i.e., replace +# "$afile eq $elem->file" by "$adir eq $elem->dir")? We could get rid of the delayed +# writing then. But maybe there is a reason for doing it this way... sub add_to_buffer { my $plainline; @@ -293,12 +295,15 @@ sub add_to_buffer } while ( !$elem->endoffile && $amodule eq $elem->module && $afile eq $elem->file ); } } + +# Writes the buffer to currently selected localize.sdf file. sub write_buffer { my $path = shift; my $localize_file = shift; my $cnt = $#buffer+1; print "Write to $path $cnt lines\n"; + mkpath $path; open FILE , ">>$localize_file" or die "Can't open file '$localize_file'\n"; foreach ( @buffer ) { commit ab69b4e6c09651e7462758bf41f992eb41c038af Author: David Tardon <dtar...@redhat.com> Date: Wed Jan 11 11:42:09 2012 +0100 Revert "fast_merge: fix mis-merge of first module's strings" This is not enough, because the file is still wrong. This reverts commit 47a8454f5f76030203ce6458cf63d4348bdacffe. Signed-off-by: David Tardon <dtar...@redhat.com> diff --git a/l10ntools/scripts/fast_merge.pl b/l10ntools/scripts/fast_merge.pl index 73b824e..5dc63cf 100644 --- a/l10ntools/scripts/fast_merge.pl +++ b/l10ntools/scripts/fast_merge.pl @@ -91,7 +91,7 @@ while( hasLines() ) } if( $#current+1 ne 0 ) { - ( $path , $localize_file ) = make_paths($current[ 0 ]->module); + ( $path , $localize_file ) = make_paths(); add_to_buffer(); write_buffer( $path , $localize_file ); } @@ -240,8 +240,7 @@ sub hasLines sub make_paths { - my $module = shift ; - my $localizeFile = $merge_dir."\\".$module."\\".$current[ 0 ]->file; + my $localizeFile = $merge_dir."\\".$current[ 0 ]->module."\\".$current[ 0 ]->file; my $path = getDir( $localizeFile ); $path =~ s/\\/\//g; @@ -252,9 +251,8 @@ sub make_paths sub write_lines { if( $first_run ){ - my $module = $current[ 0 ]->module; add_to_buffer(); - my( $path , $localize_file ) = make_paths($module); + my( $path , $localize_file ) = make_paths(); $last_path = $path; $last_localize_file = $localize_file; mkpath $path; @@ -264,7 +262,7 @@ sub write_lines else { return , if ( $#current+1 eq 0 ); - my( $path , $localize_file ) = make_paths($current[ 0 ]->module); + my( $path , $localize_file ) = make_paths(); if( $path eq $last_path ) { add_to_buffer(); _______________________________________________ Libreoffice-commits mailing list Libreoffice-commits@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits