[Libreoffice-commits] core.git: Branch 'aoo/trunk' - 14 commits - instsetoo_native/util odk/util oox/source solenv/bin svgio/source svx/inc svx/source sw/inc sw/source xmloff/source
Andre Fischer
af at apache.org
Tue Nov 5 15:41:26 CET 2013
instsetoo_native/util/openoffice.lst | 48 -
odk/util/makefile.pmk | 2
oox/source/core/xmlfilterbase.cxx | 3
oox/source/token/namespaces.txt | 1
oox/source/token/tokens.txt | 3
solenv/bin/make_installer.pl | 208 +++----
solenv/bin/modules/installer/archivefiles.pm | 152 ++---
solenv/bin/modules/installer/configuration.pm | 12
solenv/bin/modules/installer/control.pm | 296 +++++-----
solenv/bin/modules/installer/download.pm | 207 ++-----
solenv/bin/modules/installer/downloadsigner.pm | 102 +--
solenv/bin/modules/installer/environment.pm | 6
solenv/bin/modules/installer/epmfile.pm | 393 +++++--------
solenv/bin/modules/installer/exiter.pm | 38 -
solenv/bin/modules/installer/files.pm | 4
solenv/bin/modules/installer/followme.pm | 5
solenv/bin/modules/installer/globals.pm | 10
solenv/bin/modules/installer/javainstaller.pm | 127 ++--
solenv/bin/modules/installer/languagepack.pm | 42 -
solenv/bin/modules/installer/logger.pm | 438 +++++++++++++--
solenv/bin/modules/installer/packagelist.pm | 53 -
solenv/bin/modules/installer/packagepool.pm | 176 +++---
solenv/bin/modules/installer/parameter.pm | 35 -
solenv/bin/modules/installer/profiles.pm | 6
solenv/bin/modules/installer/scppatchsoname.pm | 10
solenv/bin/modules/installer/scpzipfiles.pm | 3
solenv/bin/modules/installer/scriptitems.pm | 256 ++++----
solenv/bin/modules/installer/setupscript.pm | 12
solenv/bin/modules/installer/simplepackage.pm | 78 +-
solenv/bin/modules/installer/strip.pm | 8
solenv/bin/modules/installer/substfilenamefiles.pm | 3
solenv/bin/modules/installer/systemactions.pm | 268 +++++----
solenv/bin/modules/installer/upx.pm | 18
solenv/bin/modules/installer/windows/admin.pm | 46 -
solenv/bin/modules/installer/windows/assembly.pm | 12
solenv/bin/modules/installer/windows/binary.pm | 3
solenv/bin/modules/installer/windows/component.pm | 14
solenv/bin/modules/installer/windows/createfolder.pm | 6
solenv/bin/modules/installer/windows/directory.pm | 8
solenv/bin/modules/installer/windows/feature.pm | 9
solenv/bin/modules/installer/windows/featurecomponent.pm | 16
solenv/bin/modules/installer/windows/file.pm | 46 -
solenv/bin/modules/installer/windows/font.pm | 6
solenv/bin/modules/installer/windows/icon.pm | 4
solenv/bin/modules/installer/windows/idtglobal.pm | 87 +-
solenv/bin/modules/installer/windows/inifile.pm | 4
solenv/bin/modules/installer/windows/java.pm | 6
solenv/bin/modules/installer/windows/media.pm | 8
solenv/bin/modules/installer/windows/mergemodule.pm | 152 ++---
solenv/bin/modules/installer/windows/msiglobal.pm | 172 +++--
solenv/bin/modules/installer/windows/msp.pm | 91 +--
solenv/bin/modules/installer/windows/patch.pm | 10
solenv/bin/modules/installer/windows/property.pm | 14
solenv/bin/modules/installer/windows/registry.pm | 6
solenv/bin/modules/installer/windows/removefile.pm | 6
solenv/bin/modules/installer/windows/selfreg.pm | 5
solenv/bin/modules/installer/windows/shortcut.pm | 9
solenv/bin/modules/installer/windows/sign.pm | 92 +--
solenv/bin/modules/installer/windows/strip.pm | 12
solenv/bin/modules/installer/windows/update.pm | 35 -
solenv/bin/modules/installer/windows/upgrade.pm | 6
solenv/bin/modules/installer/worker.pm | 238 ++++----
solenv/bin/modules/installer/xpdinstaller.pm | 52 -
solenv/bin/modules/installer/ziplist.pm | 10
svgio/source/svgreader/svgnode.cxx | 23
svx/inc/svx/sdr/properties/customshapeproperties.hxx | 3
svx/source/sdr/properties/customshapeproperties.cxx | 36 -
sw/inc/ndgrf.hxx | 1
sw/source/core/doc/notxtfrm.cxx | 156 +----
sw/source/filter/rtf/swparrtf.cxx | 9
xmloff/source/draw/shapeexport2.cxx | 69 +-
xmloff/source/draw/shapeexport3.cxx | 16
72 files changed, 2373 insertions(+), 2148 deletions(-)
New commits:
commit af5fd1e2966d1b45f8565ca694c38ee44706e44c
Author: Andre Fischer <af at apache.org>
Date: Mon Nov 4 08:46:39 2013 +0000
123595: Add temporary debug code to find who prints '%{'.
diff --git a/solenv/bin/modules/installer/logger.pm b/solenv/bin/modules/installer/logger.pm
index b6659c2..6145ce0 100644
--- a/solenv/bin/modules/installer/logger.pm
+++ b/solenv/bin/modules/installer/logger.pm
@@ -144,11 +144,12 @@ sub printf ($$@)
{
my ($self, $format, @arguments) = @_;
- my $message = sprintf($format, @arguments);
- if ($message =~ /\%/)
+ if ($format =~ /\%\{/)
{
+ printf(">%s<\n", $format);
PrintStackTrace();
}
+ my $message = sprintf($format, @arguments);
$self->print($message, 0);
}
@@ -659,6 +660,7 @@ sub PrintStackTrace ()
}
}
+
sub Die ($)
{
my ($message) = @_;
commit 5e251e4f8640c7e3f14dff426ae075ae58825003
Author: Jürgen Schmidt <jsc at apache.org>
Date: Fri Nov 1 16:18:51 2013 +0000
increase version number (4.1.0) to differentiate trunk from the released 4.0.1 version
diff --git a/instsetoo_native/util/openoffice.lst b/instsetoo_native/util/openoffice.lst
index fcee3e1..82ac49b 100644
--- a/instsetoo_native/util/openoffice.lst
+++ b/instsetoo_native/util/openoffice.lst
@@ -5,9 +5,9 @@ Globals
variables
{
APACHEPROJECTNAME Apache OpenOffice
- OOOBASEVERSION 4.0
- OOOPACKAGEVERSION 4.0.0
- UREPACKAGEVERSION 4.0.0
+ OOOBASEVERSION 4.1
+ OOOPACKAGEVERSION 4.1.0
+ UREPACKAGEVERSION 4.1.0
URELAYERVERSION 1
BASISROOTNAME OpenOffice
UNIXBASISROOTNAME openoffice
@@ -41,9 +41,9 @@ Globals
OOOXMLFILEFORMATNAME OpenOffice.org XML
OOOXMLFILEFORMATVERSION 1.0
WRITERCOMPATIBILITYVERSIONOOO11 OpenOffice.org 1.1
- SERVICETAG_PRODUCTNAME Apache OpenOffice 4.0
- SERVICETAG_PRODUCTVERSION 4.0
- SERVICETAG_PARENTNAME Apache OpenOffice 4.0
+ SERVICETAG_PRODUCTNAME Apache OpenOffice 4.1
+ SERVICETAG_PRODUCTVERSION 4.1
+ SERVICETAG_PARENTNAME Apache OpenOffice 4.1
SERVICETAG_SOURCE {buildsource}{minor}(Build:{buildid})
SERVICETAG_URN urn:uuid:500061aa-5666-11e0-8e00-080020a9ed93
REGISTRATION_HOST https://registration.openoffice.org
@@ -61,7 +61,7 @@ Apache_OpenOffice
{
FULLPRODUCTNAME Apache OpenOffice
PRODUCTNAME OpenOffice
- PRODUCTVERSION 4.0.0
+ PRODUCTVERSION 4.1.0
PRODUCTEXTENSION
LONG_PRODUCTEXTENSION
SHORT_PRODUCTEXTENSION
@@ -69,15 +69,15 @@ Apache_OpenOffice
POSTVERSIONEXTENSIONUNIX
BRANDPACKAGEVERSION 4
USERDIRPRODUCTVERSION 4
- ABOUTBOXPRODUCTVERSION 4.0.0
- BASEPRODUCTVERSION 4.0
+ ABOUTBOXPRODUCTVERSION 4.1.0
+ BASEPRODUCTVERSION 4.1
PCPFILENAME openoffice.pcp
UPDATEURL https://ooo-updates.apache.org/aoo410/check.Update
ADD_INCLUDE_FILES cliureversion.mk,clioootypesversion.mk,userland.txt,version.lst
REMOVE_UPGRADE_CODE_FILE upgradecode_remove_ooo.txt
ADDSYSTEMINTEGRATION 1
EVAL
- PACKAGEVERSION 4.0.0
+ PACKAGEVERSION 4.1.0
PACKAGEREVISION {milestone}
LICENSENAME ALv2
GLOBALFILEGID gid_File_Lib_Vcl
@@ -121,7 +121,7 @@ Apache_OpenOffice_wJRE
{
FULLPRODUCTNAME Apache OpenOffice
PRODUCTNAME OpenOffice
- PRODUCTVERSION 4.0.0
+ PRODUCTVERSION 4.1.0
PRODUCTEXTENSION
LONG_PRODUCTEXTENSION
SHORT_PRODUCTEXTENSION
@@ -129,14 +129,14 @@ Apache_OpenOffice_wJRE
POSTVERSIONEXTENSIONUNIX
BRANDPACKAGEVERSION 4
USERDIRPRODUCTVERSION 4
- ABOUTBOXPRODUCTVERSION 4.0.0
- BASEPRODUCTVERSION 4.0
+ ABOUTBOXPRODUCTVERSION 4.1.0
+ BASEPRODUCTVERSION 4.1
UPDATEURL https://ooo-updates.apache.org/aoo410/check.Update
ADD_INCLUDE_FILES cliureversion.mk,clioootypesversion.mk,javaversion2.dat,userland.txt,version.lst
REMOVE_UPGRADE_CODE_FILE upgradecode_remove_ooo.txt
ADDSYSTEMINTEGRATION 1
EVAL
- PACKAGEVERSION 4.0.0
+ PACKAGEVERSION 4.1.0
PACKAGEREVISION {milestone}
LICENSENAME ALv2
WITHJREPRODUCT 1
@@ -181,7 +181,7 @@ Apache_OpenOffice_Dev
{
FULLPRODUCTNAME AOO-Developer-Build
PRODUCTNAME AOO-Developer-Build
- PRODUCTVERSION 4.0.0
+ PRODUCTVERSION 4.1.0
PRODUCTEXTENSION
LONG_PRODUCTEXTENSION
SHORT_PRODUCTEXTENSION
@@ -191,8 +191,8 @@ Apache_OpenOffice_Dev
POSTVERSIONEXTENSIONUNIX
BRANDPACKAGEVERSION 4
USERDIRPRODUCTVERSION 4
- ABOUTBOXPRODUCTVERSION 4.0.0
- BASEPRODUCTVERSION 4.0
+ ABOUTBOXPRODUCTVERSION 4.1.0
+ BASEPRODUCTVERSION 4.1
DEVELOPMENTPRODUCT 1
BASISPACKAGEPREFIX aoodev
UREPACKAGEPREFIX aoodev
@@ -201,7 +201,7 @@ Apache_OpenOffice_Dev
UPDATEURL https://ooo-updates.apache.org/aoo410/check.Update
ADD_INCLUDE_FILES cliureversion.mk,clioootypesversion.mk,javaversion2.dat,userland.txt,version.lst
EVAL
- PACKAGEVERSION 4.0.0
+ PACKAGEVERSION 4.1.0
PACKAGEREVISION {milestone}
LICENSENAME ALv2
GLOBALFILEGID gid_File_Lib_Vcl
@@ -250,8 +250,8 @@ URE
{
FULLPRODUCTNAME URE
PRODUCTNAME URE
- PRODUCTVERSION 4.0.0
- PACKAGEVERSION 4.0
+ PRODUCTVERSION 4.1.0
+ PACKAGEVERSION 4.1
PACKAGEREVISION 1
PRODUCTEXTENSION
LONG_PRODUCTEXTENSION
@@ -293,14 +293,14 @@ Apache_OpenOffice_SDK
{
FULLPRODUCTNAME Apache OpenOffice
PRODUCTNAME OpenOffice
- PRODUCTVERSION 4.0.0
+ PRODUCTVERSION 4.1.0
PRODUCTEXTENSION
LONG_PRODUCTEXTENSION
SHORT_PRODUCTEXTENSION
POSTVERSIONEXTENSION SDK
POSTVERSIONEXTENSIONUNIX sdk
BRANDPACKAGEVERSION 4
- PACKAGEVERSION 4.0.0
+ PACKAGEVERSION 4.1.0
PACKAGEREVISION {milestone}
PACK_INSTALLED 1
POOLPRODUCT 0
@@ -341,7 +341,7 @@ Apache_OpenOffice_Dev_SDK
{
FULLPRODUCTNAME AOO-Developer-Build
PRODUCTNAME AOO-Developer-Build
- PRODUCTVERSION 4.0.0
+ PRODUCTVERSION 4.1.0
PRODUCTEXTENSION
LONG_PRODUCTEXTENSION
SHORT_PRODUCTEXTENSION
@@ -350,7 +350,7 @@ Apache_OpenOffice_Dev_SDK
POSTVERSIONEXTENSION SDK
POSTVERSIONEXTENSIONUNIX sdk
BRANDPACKAGEVERSION 4
- PACKAGEVERSION 4.0.0
+ PACKAGEVERSION 4.1.0
PACKAGEREVISION {milestone}
BASISPACKAGEPREFIX aoodev
UREPACKAGEPREFIX aoodev
diff --git a/odk/util/makefile.pmk b/odk/util/makefile.pmk
index 33174f5..eb1d4c0 100644
--- a/odk/util/makefile.pmk
+++ b/odk/util/makefile.pmk
@@ -22,7 +22,7 @@
# used for sdk common files
-PRODUCT_RELEASE=4.0
+PRODUCT_RELEASE=4.1
OFFICENAME=OpenOffice
.IF "$(GUI)"=="WNT"
SDKDIRNAME=OpenOffice_$(PRODUCT_RELEASE)_SDK
commit 3d73c711fbc482fad604ec01094253d17f2609d6
Author: Oliver-Rainer Wittmann <orw at apache.org>
Date: Fri Nov 1 11:35:02 2013 +0000
119959: <SwRTFParser::SetAttrInDoc(..)> - reset list attributes, if needed
diff --git a/sw/source/filter/rtf/swparrtf.cxx b/sw/source/filter/rtf/swparrtf.cxx
index 29b7d0f..ae7c826 100644
--- a/sw/source/filter/rtf/swparrtf.cxx
+++ b/sw/source/filter/rtf/swparrtf.cxx
@@ -2290,8 +2290,13 @@ void SwRTFParser::SetAttrInDoc( SvxRTFItemStackType &rSet )
SwTxtNode* pTxtNd = pDoc->GetNodes()[ n ]->GetTxtNode();
if( pTxtNd )
{
- pTxtNd->SetAttr(
- *GetDfltAttr(RES_PARATR_NUMRULE));
+ pTxtNd->SetAttr( *GetDfltAttr(RES_PARATR_NUMRULE) );
+ // reset all list attributes
+ pTxtNd->ResetAttr( RES_PARATR_LIST_LEVEL );
+ pTxtNd->ResetAttr( RES_PARATR_LIST_ISRESTART );
+ pTxtNd->ResetAttr( RES_PARATR_LIST_RESTARTVALUE );
+ pTxtNd->ResetAttr( RES_PARATR_LIST_ISCOUNTED );
+ pTxtNd->ResetAttr( RES_PARATR_LIST_ID );
}
}
}
commit ce8ea19b028c304985958286af18591c68996ccc
Author: Armin Le Grand <alg at apache.org>
Date: Fri Nov 1 10:26:45 2013 +0000
i123433 by error removed the export of the created svg:d in ExportConnectorShape
hint by: Stephan Bergmann
diff --git a/xmloff/source/draw/shapeexport2.cxx b/xmloff/source/draw/shapeexport2.cxx
index f9cbfe2..70d3263 100644
--- a/xmloff/source/draw/shapeexport2.cxx
+++ b/xmloff/source/draw/shapeexport2.cxx
@@ -1441,6 +1441,9 @@ void XMLShapeExport::ImpExportConnectorShape(
true, // bUseRelativeCoordinates
false, // bDetectQuadraticBeziers: not used in old, but maybe activated now
true)); // bHandleRelativeNextPointCompatible
+
+ // write point array
+ mrExport.AddAttribute(XML_NAMESPACE_SVG, XML_D, aPolygonString);
}
}
commit a5e093baadd6d016bfb6780c9eea31ab5f7ec171
Author: Andre Fischer <af at apache.org>
Date: Fri Nov 1 09:54:58 2013 +0000
123595: Use print instead of printf when text is to be printed verbatim.
diff --git a/solenv/bin/modules/installer/epmfile.pm b/solenv/bin/modules/installer/epmfile.pm
index 64ac137..e877595 100644
--- a/solenv/bin/modules/installer/epmfile.pm
+++ b/solenv/bin/modules/installer/epmfile.pm
@@ -2549,7 +2549,7 @@ sub create_packages_without_epm
{
# if ( $i < $maxrpmcalls ) { $rpmoutput[$j] =~ s/\bERROR\b/PROBLEM/ig; }
$rpmoutput[$j] =~ s/\bERROR\b/PROBLEM/ig;
- $installer::logger::Lang->printf($rpmoutput[$j]);
+ $installer::logger::Lang->print($rpmoutput[$j]);
}
if ($returnvalue)
@@ -2596,7 +2596,7 @@ sub create_packages_without_epm
foreach my $line (@helperrpmoutput)
{
- $installer::logger::Lang->printf($helperrpmoutput[$j]);
+ $installer::logger::Lang->print($helperrpmoutput[$j]);
}
if ($helperreturnvalue)
commit b80a5d878bf5056e64f6b172562c1c7aff9eba44
Author: Andre Fischer <af at apache.org>
Date: Fri Nov 1 09:54:00 2013 +0000
123595: logger::printf now writes stack trace when formatted message still contains %
diff --git a/solenv/bin/modules/installer/logger.pm b/solenv/bin/modules/installer/logger.pm
index 7847b67..b6659c2 100644
--- a/solenv/bin/modules/installer/logger.pm
+++ b/solenv/bin/modules/installer/logger.pm
@@ -32,19 +32,8 @@ use strict;
my $StartTime = undef;
-sub Die ($)
-{
- my ($message) = @_;
- print "Stack Trace:\n";
- my $i = 1;
- while ((my @call_details = (caller($i++))))
- {
- printf("%s:%s in function %s\n", $call_details[1], $call_details[2], $call_details[3]);
- }
-
- die $message;
-}
-
+sub PrintStackTrace ();
+sub Die ($);
=head1 NAME
@@ -155,7 +144,12 @@ sub printf ($$@)
{
my ($self, $format, @arguments) = @_;
- $self->print(sprintf($format, @arguments), 0);
+ my $message = sprintf($format, @arguments);
+ if ($message =~ /\%/)
+ {
+ PrintStackTrace();
+ }
+ $self->print($message, 0);
}
@@ -650,4 +644,28 @@ sub print_error
return;
}
+
+=head2 PrintStackTrace()
+ This is for debugging the print and printf methods of the logger class and their use.
+ Therefore we use the Perl print/printf directly and not the logger methods to avoid loops in case of errors.
+=cut
+sub PrintStackTrace ()
+{
+ print "Stack Trace:\n";
+ my $i = 1;
+ while ((my @call_details = (caller($i++))))
+ {
+ printf("%s:%s in function %s\n", $call_details[1], $call_details[2], $call_details[3]);
+ }
+}
+
+sub Die ($)
+{
+ my ($message) = @_;
+ PrintStackTrace();
+ die $message;
+}
+
+
+
1;
commit ead03cdff0414dd0c121ac834d48b4f9fd7cabfb
Author: Andre Fischer <af at apache.org>
Date: Fri Nov 1 09:32:50 2013 +0000
123959: Fixed build breaker due to deprecation of print_message().
diff --git a/solenv/bin/modules/installer/languagepack.pm b/solenv/bin/modules/installer/languagepack.pm
index 2e5bea4..7dbd76c 100644
--- a/solenv/bin/modules/installer/languagepack.pm
+++ b/solenv/bin/modules/installer/languagepack.pm
@@ -162,7 +162,7 @@ sub create_tar_gz_file
$packagename =~ s/\.rpm\s*$//;
my $targzname = $packagename . ".tar.gz";
$systemcall = "cd $installdir; tar -cf - $packagestring | gzip > $targzname";
- installer::logger::print_message( "... $systemcall ...\n" );
+ $installer::logger::Info->printf("... %s ...\n", $systemcall);
my $returnvalue = system($systemcall);
@@ -499,7 +499,7 @@ sub build_installer_for_languagepack
{
my ($installdir, $allvariableshashref, $includepatharrayref, $languagesarrayref, $languagestringref) = @_;
- installer::logger::print_message( "... creating shell script installer ...\n" );
+ $installer::logger::Info->print("... creating shell script installer ...\n");
installer::logger::include_header_into_logfile("Creating shell script installer:");
diff --git a/solenv/bin/modules/installer/logger.pm b/solenv/bin/modules/installer/logger.pm
index d9aaac1..7847b67 100644
--- a/solenv/bin/modules/installer/logger.pm
+++ b/solenv/bin/modules/installer/logger.pm
@@ -32,6 +32,20 @@ use strict;
my $StartTime = undef;
+sub Die ($)
+{
+ my ($message) = @_;
+ print "Stack Trace:\n";
+ my $i = 1;
+ while ((my @call_details = (caller($i++))))
+ {
+ printf("%s:%s in function %s\n", $call_details[1], $call_details[2], $call_details[3]);
+ }
+
+ die $message;
+}
+
+
=head1 NAME
installer::logger
@@ -158,7 +172,7 @@ sub print ($$;$)
{
my ($self, $message, $force) = @_;
- die "newline at start of line" if ($message =~ /^\n.+/);
+ Die "newline at start of line" if ($message =~ /^\n.+/);
$force = 0 unless defined $force;
@@ -258,7 +272,7 @@ sub set_filename ($$)
if ($filename ne "")
{
open $self->{'file'}, ">", $self->{'filename'}
- || die "can not open log file ".$self->{'filename'}." for writing";
+ || Die "can not open log file ".$self->{'filename'}." for writing";
$self->{'is_print_to_console'} = 0;
# Make all writes synchronous so that we don't loose any messages on an
@@ -386,7 +400,7 @@ sub include_header_into_globallogfile
sub include_timestamp_into_logfile
{
- die "deprected";
+ Die "deprected";
my ($message) = @_;
my $infoline;
@@ -591,7 +605,7 @@ sub set_installation_date
sub print_message
{
- die "print_message is deprecated";
+ Die "print_message is deprecated";
my $message = shift;
chomp $message;
diff --git a/solenv/bin/modules/installer/xpdinstaller.pm b/solenv/bin/modules/installer/xpdinstaller.pm
index ee426f0..301878b 100644
--- a/solenv/bin/modules/installer/xpdinstaller.pm
+++ b/solenv/bin/modules/installer/xpdinstaller.pm
@@ -596,7 +596,7 @@ sub get_size_value
# Evaluating an error, because of rpm problems with removed LD_LIBRARY_PATH
if ( $error )
{
- installer::logger::print_message( "... trying /usr/bin/rpm ...\n" );
+ $installer::logger::Info->print("... trying /usr/bin/rpm ...\n");
my $systemcall = "/usr/bin/rpm -qp --queryformat \"\[\%\{FILESIZES\}\\n\]\" $packagename 2\>\&1 |";
($rpmout, $error) = make_systemcall_allowing_error($systemcall, 0, 0);
if ( $error ) { installer::exiter::exit_program("ERROR: rpm failed to query package!", "get_size_value"); }
@@ -734,7 +734,7 @@ sub get_fullpkgname_value
# Evaluating an error, because of rpm problems with removed LD_LIBRARY_PATH
if ( $error )
{
- installer::logger::print_message( "... trying /usr/bin/rpm ...\n" );
+ $installer::logger::Info->print("... trying /usr/bin/rpm ...\n");
my $systemcall = "/usr/bin/rpm -qp $packagename |";
($returnarray, $error) = make_systemcall_allowing_error($systemcall, 0, 0);
if ( $error ) { installer::exiter::exit_program("ERROR: rpm failed to query package!", "get_fullpkgname_value"); }
@@ -864,7 +864,7 @@ sub make_systemcall
my @returns = ();
- installer::logger::print_message( "... $systemcall ...\n" );
+ $installer::logger::Info->printf("... %s ...\n", $systemcall);
open (REG, "$systemcall");
while (<REG>) {push(@returns, $_); }
@@ -908,7 +908,7 @@ sub make_systemcall_allowing_error
my @returns = ();
- installer::logger::print_message( "... $systemcall ...\n" );
+ $installer::logger::Info->printf("... %s ...\n", $systemcall);
open (REG, "$systemcall");
while (<REG>) {push(@returns, $_); }
commit 8f3a7a11fa39b1b0cfd6cfd0d085eaabe53b1fe9
Author: Steve Yin <steve_y at apache.org>
Date: Fri Nov 1 05:51:39 2013 +0000
i123528: Only placeholder shown for cropped picture in particular .pptx
diff --git a/oox/source/core/xmlfilterbase.cxx b/oox/source/core/xmlfilterbase.cxx
index 0ace8a4..8f7408c 100644
--- a/oox/source/core/xmlfilterbase.cxx
+++ b/oox/source/core/xmlfilterbase.cxx
@@ -19,8 +19,6 @@
*
*************************************************************/
-
-
#include "oox/core/xmlfilterbase.hxx"
#include <cstdio>
@@ -120,6 +118,7 @@ XmlFilterBaseImpl::XmlFilterBaseImpl( const Reference< XComponentContext >& rxCo
maFastParser.registerNamespace( NMSP_ax );
maFastParser.registerNamespace( NMSP_xm );
+ maFastParser.registerNamespace( NMSP_markupCompat ); // i123528
}
// ============================================================================
diff --git a/oox/source/token/namespaces.txt b/oox/source/token/namespaces.txt
index 6300298..bd45e8f 100644
--- a/oox/source/token/namespaces.txt
+++ b/oox/source/token/namespaces.txt
@@ -70,3 +70,4 @@ dc http://purl.org/dc/elements/1.1/
dcTerms http://purl.org/dc/terms/
xm http://schemas.microsoft.com/office/excel/2006/main
sprm http://sprm
+markupCompat http://schemas.openxmlformats.org/markup-compatibility/2006
diff --git a/oox/source/token/tokens.txt b/oox/source/token/tokens.txt
index 13c1a10..643e661 100644
--- a/oox/source/token/tokens.txt
+++ b/oox/source/token/tokens.txt
@@ -37,6 +37,7 @@ AbbreviatedCaseNumber
Accel
Accel2
AlbumTitle
+AlternateContent
Always
Anchor
AppVersion
@@ -79,6 +80,7 @@ Characters
CharactersWithSpaces
Checkbox
Checked
+Choice
City
ClientData
ColHidden
@@ -2107,6 +2109,7 @@ factor
fade
fadeDir
fallback
+Fallback
false
family
fans
commit f5d69b2b8b002ca6905496a9d9065ef76b5641d7
Author: Armin Le Grand <alg at apache.org>
Date: Thu Oct 31 14:43:21 2013 +0000
i123500 unified Graphic processing to use GraphicPrimitive2D
diff --git a/sw/inc/ndgrf.hxx b/sw/inc/ndgrf.hxx
index 7a7958b..f9ee8ac 100644
--- a/sw/inc/ndgrf.hxx
+++ b/sw/inc/ndgrf.hxx
@@ -154,7 +154,6 @@ public:
/// wrappers for non-const calls at GraphicObject
void ReleaseGraphicFromCache() { maGrfObj.ReleaseFromCache(); }
- void DrawGraphicWithPDFHandling(OutputDevice& rOutDev, const Point& rPt, const Size& rSz, const GraphicAttr* pGrfAttr = NULL, const sal_uLong nFlags = GRFMGR_DRAW_STANDARD) { maGrfObj.DrawWithPDFHandling(rOutDev, rPt, rSz, pGrfAttr, nFlags); }
void StartGraphicAnimation(OutputDevice* pOut, const Point& rPt, const Size& rSz, long nExtraData = 0, const GraphicAttr* pAttr = NULL, sal_uLong nFlags = GRFMGR_DRAW_STANDARD, OutputDevice* pFirstFrameOutDev = NULL) { maGrfObj.StartAnimation(pOut, rPt, rSz, nExtraData, pAttr, nFlags, pFirstFrameOutDev); }
void StopGraphicAnimation(OutputDevice* pOut = NULL, long nExtraData = 0) { maGrfObj.StopAnimation(pOut, nExtraData); }
diff --git a/sw/source/core/doc/notxtfrm.cxx b/sw/source/core/doc/notxtfrm.cxx
index c76520f..15f2fc7 100644
--- a/sw/source/core/doc/notxtfrm.cxx
+++ b/sw/source/core/doc/notxtfrm.cxx
@@ -76,7 +76,7 @@
#include <basegfx/matrix/b2dhommatrixtools.hxx>
#include <drawinglayer/processor2d/processor2dtools.hxx>
#include <basegfx/matrix/b2dhommatrixtools.hxx>
-#include <drawinglayer/primitive2d/bitmapprimitive2d.hxx>
+#include <drawinglayer/primitive2d/graphicprimitive2d.hxx>
using namespace com::sun::star;
@@ -816,57 +816,19 @@ bool paintUsingPrimitivesHelper(
OutputDevice& rOutputDevice,
const drawinglayer::primitive2d::Primitive2DSequence& rSequence,
const basegfx::B2DRange& rSourceRange,
- const basegfx::B2DRange& rTargetRange,
- const sal_Int32 nLeftCrop = 0,
- const sal_Int32 nTopCrop = 0,
- const sal_Int32 nRightCrop = 0,
- const sal_Int32 nBottomCrop = 0,
- const bool bMirrorX = false,
- const bool bMirrorY = false)
+ const basegfx::B2DRange& rTargetRange)
{
- const double fSourceWidth(rSourceRange.getWidth());
- const double fSourceHeight(rSourceRange.getHeight());
-
- if(rSequence.hasElements() && !basegfx::fTools::equalZero(fSourceWidth) && !basegfx::fTools::equalZero(fSourceHeight))
+ if(rSequence.hasElements() && !basegfx::fTools::equalZero(rSourceRange.getWidth()) && !basegfx::fTools::equalZero(rSourceRange.getHeight()))
{
- // copy target range and apply evtl. cropping
- basegfx::B2DRange aTargetRange(rTargetRange);
-
- if(nLeftCrop || nTopCrop || nRightCrop || nBottomCrop)
+ if(!basegfx::fTools::equalZero(rTargetRange.getWidth()) && !basegfx::fTools::equalZero(rTargetRange.getHeight()))
{
- // calculate original TargetRange
- const double fFactor100thmmToTwips(72.0 / 127.0);
-
- aTargetRange = basegfx::B2DRange(
- aTargetRange.getMinX() - (nLeftCrop * fFactor100thmmToTwips),
- aTargetRange.getMinY() - (nTopCrop * fFactor100thmmToTwips),
- aTargetRange.getMaxX() + (nRightCrop * fFactor100thmmToTwips),
- aTargetRange.getMaxY() + (nBottomCrop * fFactor100thmmToTwips));
- }
-
- const double fTargetWidth(aTargetRange.getWidth());
- const double fTargetHeight(aTargetRange.getHeight());
-
- if(!basegfx::fTools::equalZero(fTargetWidth) && !basegfx::fTools::equalZero(fTargetHeight))
- {
- // map graphic range to target range. This will automatically include
- // tme mapping from Svg 1/100th mm content to twips since the target
- // range is twips already
- basegfx::B2DHomMatrix aMappingTransform(
- basegfx::tools::createTranslateB2DHomMatrix(
- -rSourceRange.getMinX(),
- -rSourceRange.getMinY()));
-
- aMappingTransform.scale(fTargetWidth / fSourceWidth, fTargetHeight / fSourceHeight);
- aMappingTransform.translate(aTargetRange.getMinX(), aTargetRange.getMinY());
-
- // apply mirrorings
- if(bMirrorX || bMirrorY)
- {
- aMappingTransform.translate(-aTargetRange.getCenterX(), -aTargetRange.getCenterY());
- aMappingTransform.scale(bMirrorX ? -1.0 : 1.0, bMirrorY ? -1.0 : 1.0); // #119176# small typo with X/Y
- aMappingTransform.translate(aTargetRange.getCenterX(), aTargetRange.getCenterY());
- }
+ // map graphic range to target range. This will e.g. automatically include
+ // tme mapping from 1/100th mm content to twips if needed when the target
+ // range is defined in twips
+ const basegfx::B2DHomMatrix aMappingTransform(
+ basegfx::tools::createSourceRangeTargetRangeTransform(
+ rSourceRange,
+ rTargetRange));
// Fill ViewInformation. Use MappingTransform here, so there is no need to
// embed the primitives to it. Use original TargetRange here so there is also
@@ -875,7 +837,7 @@ bool paintUsingPrimitivesHelper(
const drawinglayer::geometry::ViewInformation2D aViewInformation2D(
aMappingTransform,
rOutputDevice.GetViewTransformation(),
- aTargetRange,
+ rTargetRange,
0,
0.0,
uno::Sequence< beans::PropertyValue >());
@@ -983,14 +945,6 @@ void SwNoTxtFrm::PaintPicture( OutputDevice* pOut, const SwRect &rGrfArea ) cons
::lcl_PaintReplacement( aAlignedGrfArea, aTxt, *pShell, this, sal_False );
bContinue = sal_False;
}
- else if( rGrfObj.IsCached( pOut, aAlignedGrfArea.Pos(),
- aAlignedGrfArea.SSize(), &aGrfAttr ))
- {
- pGrfNd->DrawGraphicWithPDFHandling(*pOut,
- aAlignedGrfArea.Pos(), aAlignedGrfArea.SSize(),
- &aGrfAttr );
- bContinue = sal_False;
- }
}
if( bContinue )
@@ -1028,68 +982,30 @@ void SwNoTxtFrm::PaintPicture( OutputDevice* pOut, const SwRect &rGrfArea ) cons
}
else
{
- const SvgDataPtr& rSvgDataPtr = rGrfObj.GetGraphic().getSvgData();
- bool bDone(false);
-
- if(rSvgDataPtr.get())
- {
- // Graphic is Svg and can be painted as primitives (vector graphic)
- const basegfx::B2DRange aTargetRange(
- aAlignedGrfArea.Left(), aAlignedGrfArea.Top(),
- aAlignedGrfArea.Right(), aAlignedGrfArea.Bottom());
- const bool bCropped(aGrfAttr.IsCropped());
- drawinglayer::primitive2d::Primitive2DSequence aContent;
- GraphicAttr aSuppressGraphicAttr(aGrfAttr);
-
- aSuppressGraphicAttr.SetCrop(0, 0, 0, 0);
- aSuppressGraphicAttr.SetRotation(0);
- aSuppressGraphicAttr.SetMirrorFlags(0);
-
- const bool bNeedTransformedGraphic(
- aSuppressGraphicAttr.IsSpecialDrawMode() ||
- aSuppressGraphicAttr.IsAdjusted() ||
- aSuppressGraphicAttr.IsMirrored() ||
- aSuppressGraphicAttr.IsRotated() ||
- aSuppressGraphicAttr.IsTransparent());
-
- if(bNeedTransformedGraphic)
- {
- // #122039# need to apply graphic transformation if GraphicAttr are used qwhich need this
- const Graphic aTransformedGraphic(rGrfObj.GetTransformedGraphic(&aSuppressGraphicAttr));
- const basegfx::B2DRange aRange(rSvgDataPtr->getRange());
- const basegfx::B2DHomMatrix aTransform(
- basegfx::tools::createScaleTranslateB2DHomMatrix(
- aRange.getRange(),
- aRange.getMinimum()));
-
- aContent.realloc(1);
- aContent[0] = new drawinglayer::primitive2d::BitmapPrimitive2D(
- aTransformedGraphic.GetBitmapEx(),
- aTransform);
- }
- else
- {
- aContent = rSvgDataPtr->getPrimitive2DSequence();
- }
-
- bDone = paintUsingPrimitivesHelper(
- *pOut,
- aContent,
- rSvgDataPtr->getRange(),
- aTargetRange,
- bCropped ? aGrfAttr.GetLeftCrop() : 0,
- bCropped ? aGrfAttr.GetTopCrop() : 0,
- bCropped ? aGrfAttr.GetRightCrop() : 0,
- bCropped ? aGrfAttr.GetBottomCrop() : 0,
- aGrfAttr.GetMirrorFlags() & BMP_MIRROR_HORZ,
- aGrfAttr.GetMirrorFlags() & BMP_MIRROR_VERT);
- }
-
- if(!bDone)
- {
- // fallback paint, uses replacement image
- pGrfNd->DrawGraphicWithPDFHandling(*pOut, aAlignedGrfArea.Pos(), aAlignedGrfArea.SSize(), &aGrfAttr);
- }
+ // unify using GraphicPrimitive2D
+ // -> the primitive handles all crop and mirror stuff
+ // -> the primitive renderer will create the needed pdf export data
+ // -> if bitmap conent, it will be cached system-dependent
+ const basegfx::B2DRange aTargetRange(
+ aAlignedGrfArea.Left(), aAlignedGrfArea.Top(),
+ aAlignedGrfArea.Right(), aAlignedGrfArea.Bottom());
+ const basegfx::B2DHomMatrix aTargetTransform(
+ basegfx::tools::createScaleTranslateB2DHomMatrix(
+ aTargetRange.getRange(),
+ aTargetRange.getMinimum()));
+ drawinglayer::primitive2d::Primitive2DSequence aContent;
+
+ aContent.realloc(1);
+ aContent[0] = new drawinglayer::primitive2d::GraphicPrimitive2D(
+ aTargetTransform,
+ rGrfObj.GetGraphic(),
+ aGrfAttr);
+
+ paintUsingPrimitivesHelper(
+ *pOut,
+ aContent,
+ aTargetRange,
+ aTargetRange);
}
}
else
commit 4487eab3cacae1e0e72406017d03a80dc73597e8
Author: Armin Le Grand <alg at apache.org>
Date: Thu Oct 31 11:53:29 2013 +0000
i123573 corrected reaction on ItemChanges for CustomShapes
diff --git a/svx/inc/svx/sdr/properties/customshapeproperties.hxx b/svx/inc/svx/sdr/properties/customshapeproperties.hxx
index e4f3caa..b396c8e 100644
--- a/svx/inc/svx/sdr/properties/customshapeproperties.hxx
+++ b/svx/inc/svx/sdr/properties/customshapeproperties.hxx
@@ -34,7 +34,8 @@ namespace sdr
{
class CustomShapeProperties : public TextProperties
{
- void UpdateTextFrameStatus();
+ private:
+ void UpdateTextFrameStatus(bool bInvalidateRenderGeometry);
protected:
// create a new itemset
diff --git a/svx/source/sdr/properties/customshapeproperties.cxx b/svx/source/sdr/properties/customshapeproperties.cxx
index be8fe35..79695d5 100644
--- a/svx/source/sdr/properties/customshapeproperties.cxx
+++ b/svx/source/sdr/properties/customshapeproperties.cxx
@@ -39,21 +39,32 @@ namespace sdr
{
namespace properties
{
- void CustomShapeProperties::UpdateTextFrameStatus()
+ void CustomShapeProperties::UpdateTextFrameStatus(bool bInvalidateRenderGeometry)
{
SdrObjCustomShape& rObj = static_cast< SdrObjCustomShape& >(GetSdrObject());
const bool bOld(rObj.bTextFrame);
+ // change TextFrame flag when bResizeShapeToFitText changes (which is mapped
+ // on the item SDRATTR_TEXT_AUTOGROWHEIGHT for custom shapes, argh)
rObj.bTextFrame = 0 != static_cast< const SdrTextAutoGrowHeightItem& >(GetObjectItemSet().Get(SDRATTR_TEXT_AUTOGROWHEIGHT)).GetValue();
+ // check if it did change
if(rObj.bTextFrame != bOld)
{
- rObj.InvalidateRenderGeometry();
+ // on change also invalidate render geometry
+ bInvalidateRenderGeometry = true;
- // #115391# Potential recursuin, since it calls SetObjectItemSet again, but rObj.bTextFrame
- // will not change again, thus it will be only one level and terminate
+ // #115391# Potential recursion, since it calls SetObjectItemSet again, but rObj.bTextFrame
+ // will not change again. Thus it will be only one level and terminate safely
rObj.AdaptTextMinSize();
}
+
+ if(bInvalidateRenderGeometry)
+ {
+ // if asked for or bResizeShapeToFitText changed, make sure that
+ // the render geometry is reconstructed using changed parameters
+ rObj.InvalidateRenderGeometry();
+ }
}
SfxItemSet& CustomShapeProperties::CreateObjectSpecificItemSet(SfxItemPool& rPool)
@@ -134,7 +145,7 @@ namespace sdr
TextProperties::ItemSetChanged(rSet);
// update bTextFrame and RenderGeometry
- UpdateTextFrameStatus();
+ UpdateTextFrameStatus(true);
}
void CustomShapeProperties::PostItemChange(const sal_uInt16 nWhich)
@@ -144,7 +155,7 @@ namespace sdr
case SDRATTR_TEXT_AUTOGROWHEIGHT:
{
// #115391# update bTextFrame and RenderGeometry using AdaptTextMinSize()
- UpdateTextFrameStatus();
+ UpdateTextFrameStatus(false);
break;
}
default:
@@ -163,7 +174,7 @@ namespace sdr
TextProperties::ItemChange( nWhich, pNewItem );
// update bTextFrame and RenderGeometry
- UpdateTextFrameStatus();
+ UpdateTextFrameStatus(true);
}
void CustomShapeProperties::SetStyleSheet(SfxStyleSheet* pNewStyleSheet, sal_Bool bDontRemoveHardAttr)
@@ -172,13 +183,13 @@ namespace sdr
TextProperties::SetStyleSheet( pNewStyleSheet, bDontRemoveHardAttr );
// update bTextFrame and RenderGeometry
- UpdateTextFrameStatus();
+ UpdateTextFrameStatus(true);
}
void CustomShapeProperties::ForceDefaultAttributes()
{
// update bTextFrame and RenderGeometry
- UpdateTextFrameStatus();
+ UpdateTextFrameStatus(true);
// SJ: Following is no good if creating customshapes, leading to objects that are white after loading via xml
// This means: Do *not* call parent here is by purpose...
@@ -226,11 +237,8 @@ namespace sdr
bRemoveRenderGeometry = sal_True;
}
- if ( bRemoveRenderGeometry )
- {
- // update bTextFrame and RenderGeometry
- UpdateTextFrameStatus();
- }
+ // update bTextFrame and RenderGeometry
+ UpdateTextFrameStatus(bRemoveRenderGeometry);
}
} // end of namespace properties
} // end of namespace sdr
commit 97481ab1d4dc21f78cfcf503d4cfe1df1c8cf3cc
Author: Andre Fischer <af at apache.org>
Date: Thu Oct 31 10:37:56 2013 +0000
123595: Cleanup logging in make_installer.pl and its modules.
diff --git a/solenv/bin/make_installer.pl b/solenv/bin/make_installer.pl
index fe8c944..60f7006 100644
--- a/solenv/bin/make_installer.pl
+++ b/solenv/bin/make_installer.pl
@@ -103,13 +103,18 @@ use installer::ziplist;
#################################################
installer::logger::starttime();
+$installer::logger::Global->add_timestamp("starting logging");
+
+# While there is no language set and logger::Lang is not yet tied to a log file,
+# forward its output to logger::Global.
+$installer::logger::Lang->set_forward($installer::logger::Global);
#########################################
# Checking the environment and setting
# most important variables
#########################################
-installer::logger::print_message( "... checking environment variables ...\n" );
+$installer::logger::Info->print( "... checking environment variables ...\n" );
my $environmentvariableshashref = installer::control::check_system_environment();
installer::environment::set_global_environment_variables($environmentvariableshashref);
@@ -153,7 +158,7 @@ my $current_install_number = "";
# Checking the system requirements
######################################
-installer::logger::print_message( "... checking required files ...\n" );
+$installer::logger::Info->print( "... checking required files ...\n" );
installer::control::check_system_path();
my $pathvariableshashref = installer::environment::create_pathvariables($environmentvariableshashref);
@@ -172,7 +177,7 @@ installer::logger::globallog("zip list file: $installer::globals::ziplistname");
my $ziplistref = installer::files::read_file($installer::globals::ziplistname);
-installer::logger::print_message( "... analyzing $installer::globals::ziplistname ... \n" );
+$installer::logger::Info->print( "... analyzing $installer::globals::ziplistname ... \n" );
my ($productblockref, $parent) = installer::ziplist::getproductblock($ziplistref, $installer::globals::product, 1); # product block from zip.lst
if ( $installer::globals::globallogging ) { installer::files::save_file($loggingdir . "productblock.log" ,$productblockref); }
@@ -361,7 +366,7 @@ if ($installer::globals::setupscript_defined_in_productlist) { installer::setups
installer::logger::globallog("setup script file: $installer::globals::setupscriptname");
-installer::logger::print_message( "... analyzing script: $installer::globals::setupscriptname ... \n" );
+$installer::logger::Info->print( "... analyzing script: $installer::globals::setupscriptname ... \n" );
my $setupscriptref = installer::files::read_file($installer::globals::setupscriptname); # Reading the setup script file
@@ -406,7 +411,7 @@ if ( $installer::globals::globallogging ) { installer::files::save_file($logging
installer::logger::log_hashref($allvariableshashref);
-installer::logger::print_message( "... analyzing directories ... \n" );
+$installer::logger::Info->print( "... analyzing directories ... \n" );
# Collect all directories in the script to get the destination dirs
@@ -426,7 +431,7 @@ if ( $installer::globals::globallogging ) { installer::files::save_array_of_hash
installer::scriptitems::resolve_all_directory_names($dirsinproductarrayref);
if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productdirectories2.log", $dirsinproductarrayref); }
-installer::logger::print_message( "... analyzing files ... \n" );
+$installer::logger::Info->print( "... analyzing files ... \n" );
my $filesinproductarrayref = installer::setupscript::get_all_items_from_script($setupscriptref, "File");
if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles1.log", $filesinproductarrayref); }
@@ -470,7 +475,7 @@ if (( $installer::globals::packageformat ne "installed" ) && ( $installer::globa
if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles2cc.log", $filesinproductarrayref); }
}
-installer::logger::print_message( "... analyzing scpactions ... \n" );
+$installer::logger::Info->print( "... analyzing scpactions ... \n" );
my $scpactionsinproductarrayref = installer::setupscript::get_all_items_from_script($setupscriptref, "ScpAction");
if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productscpactions1.log", $scpactionsinproductarrayref); }
@@ -492,12 +497,12 @@ if ( $installer::globals::globallogging ) { installer::files::save_array_of_hash
installer::scriptitems::change_keys_of_scpactions($scpactionsinproductarrayref);
if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productscpactions2.log", $scpactionsinproductarrayref); }
-installer::logger::print_message( "... analyzing shortcuts ... \n" );
+$installer::logger::Info->print( "... analyzing shortcuts ... \n" );
my $linksinproductarrayref = installer::setupscript::get_all_items_from_script($setupscriptref, "Shortcut");
if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productlinks1.log", $linksinproductarrayref); }
-installer::logger::print_message( "... analyzing unix links ... \n" );
+$installer::logger::Info->print( "... analyzing unix links ... \n" );
my $unixlinksinproductarrayref = installer::setupscript::get_all_items_from_script($setupscriptref, "Unixlink");
if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "unixlinks1.log", $unixlinksinproductarrayref); }
@@ -505,12 +510,12 @@ if ( $installer::globals::globallogging ) { installer::files::save_array_of_hash
# $unixlinksinproductarrayref = installer::scriptitems::filter_layerlinks_from_unixlinks($unixlinksinproductarrayref);
# if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "unixlinks1b.log", $unixlinksinproductarrayref); }
-installer::logger::print_message( "... analyzing profile ... \n" );
+$installer::logger::Info->print( "... analyzing profile ... \n" );
my $profilesinproductarrayref = installer::setupscript::get_all_items_from_script($setupscriptref, "Profile");
if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "profiles1.log", $profilesinproductarrayref); }
-installer::logger::print_message( "... analyzing profileitems ... \n" );
+$installer::logger::Info->print( "... analyzing profileitems ... \n" );
my $profileitemsinproductarrayref = installer::setupscript::get_all_items_from_script($setupscriptref, "ProfileItem");
if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "profileitems1.log", $profileitemsinproductarrayref); }
@@ -523,12 +528,12 @@ my $mergemodulesarrayref;
if ( $installer::globals::iswindowsbuild ) # Windows specific items: Folder, FolderItem, RegistryItem, WindowsCustomAction
{
- installer::logger::print_message( "... analyzing folders ... \n" );
+ $installer::logger::Info->print( "... analyzing folders ... \n" );
$folderinproductarrayref = installer::setupscript::get_all_items_from_script($setupscriptref, "Folder");
if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "folder1.log", $folderinproductarrayref); }
- installer::logger::print_message( "... analyzing folderitems ... \n" );
+ $installer::logger::Info->print( "... analyzing folderitems ... \n" );
$folderitemsinproductarrayref = installer::setupscript::get_all_items_from_script($setupscriptref, "FolderItem");
if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "folderitems1.log", $folderitemsinproductarrayref); }
@@ -539,7 +544,7 @@ if ( $installer::globals::iswindowsbuild ) # Windows specific items: Folder, Fo
installer::setupscript::prepare_non_advertised_files($folderitemsinproductarrayref, $filesinproductarrayref);
if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles2d.log", $filesinproductarrayref); }
- installer::logger::print_message( "... analyzing registryitems ... \n" );
+ $installer::logger::Info->print( "... analyzing registryitems ... \n" );
$registryitemsinproductarrayref = installer::setupscript::get_all_items_from_script($setupscriptref, "RegistryItem");
if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "registryitems1.log", $registryitemsinproductarrayref); }
@@ -547,12 +552,12 @@ if ( $installer::globals::iswindowsbuild ) # Windows specific items: Folder, Fo
$registryitemsinproductarrayref = installer::scriptitems::remove_uninstall_regitems_from_script($registryitemsinproductarrayref);
if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "registryitems1b.log", $registryitemsinproductarrayref); }
- installer::logger::print_message( "... analyzing Windows custom actions ... \n" );
+ $installer::logger::Info->print( "... analyzing Windows custom actions ... \n" );
$windowscustomactionsarrayref = installer::setupscript::get_all_items_from_script($setupscriptref, "WindowsCustomAction");
if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "windowscustomactions1.log", $windowscustomactionsarrayref); }
- installer::logger::print_message( "... analyzing Windows merge modules ... \n" );
+ $installer::logger::Info->print( "... analyzing Windows merge modules ... \n" );
$mergemodulesarrayref = installer::setupscript::get_all_items_from_script($setupscriptref, "MergeModule");
if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "mergemodules1.log", $mergemodulesarrayref); }
@@ -562,7 +567,7 @@ my $modulesinproductarrayref;
if (!($installer::globals::is_copy_only_project))
{
- installer::logger::print_message( "... analyzing modules ... \n" );
+ $installer::logger::Info->print( "... analyzing modules ... \n" );
$modulesinproductarrayref = installer::setupscript::get_all_items_from_script($setupscriptref, "Module");
if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "modules1.log", $modulesinproductarrayref); }
@@ -616,6 +621,7 @@ if ( $installer::globals::debug ) { installer::logger::savedebug($installer::glo
if ( $installer::globals::debug ) { installer::logger::debuginfo("\nPart 1b: The language dependent part\n"); }
+
for ( my $n = 0; $n <= $#installer::globals::languageproducts; $n++ )
{
my $languagesarrayref = installer::languages::get_all_languages_for_one_product($installer::globals::languageproducts[$n], $allvariableshashref);
@@ -623,8 +629,8 @@ for ( my $n = 0; $n <= $#installer::globals::languageproducts; $n++ )
$installer::globals::alllanguagesinproductarrayref = $languagesarrayref;
my $languagestringref = installer::languages::get_language_string($languagesarrayref);
- installer::logger::print_message( "------------------------------------\n" );
- installer::logger::print_message( "... languages $$languagestringref ... \n" );
+ $installer::logger::Info->print( "------------------------------------\n" );
+ $installer::logger::Info->print( "... languages $$languagestringref ... \n" );
if ( $installer::globals::patch )
{
@@ -649,7 +655,6 @@ for ( my $n = 0; $n <= $#installer::globals::languageproducts; $n++ )
# Until now only global logging into default: logfile.txt
############################################################
- @installer::globals::logfileinfo = (); # new logfile array and new logfile name
installer::logger::copy_globalinfo_into_logfile();
$installer::globals::globalinfo_copied = 1;
@@ -667,13 +672,25 @@ for ( my $n = 0; $n <= $#installer::globals::languageproducts; $n++ )
$loglanguagestring = "lang_" . $number_of_languages . "_id_" . $id;
}
- $installer::globals::logfilename = "log_" . $installer::globals::build;
- if ( $logminor ne "" ) { $installer::globals::logfilename .= "_" . $logminor; }
- $installer::globals::logfilename .= "_" . $loglanguagestring;
- $installer::globals::logfilename .= ".log";
+ # Setup the directory where the language dependent log file will be stored.
$loggingdir = $loggingdir . $loglanguagestring . $installer::globals::separator;
installer::systemactions::create_directory($loggingdir);
+ # Set language dependent logging.
+ $installer::globals::logfilename = sprintf("log_%s%s_%s.log",
+ $installer::globals::build,
+ $logminor ne "" ? "_" . $logminor : "",
+ $loglanguagestring);
+ $installer::logger::Lang->set_filename($loggingdir . $installer::globals::logfilename);
+ $installer::logger::Lang->copy_lines_from($installer::logger::Global);
+ $installer::logger::Lang->set_filter(\&installer::control::filter_log_error);
+ installer::control::prepare_error_processing();
+ # All logging to the console is also forwarded to the language dependen log.
+ $installer::logger::Lang->set_forward(undef);
+ $installer::logger::Info->set_forward($installer::logger::Lang);
+ # Scan all log lines for error messages.
+ $installer::logger::Lang->add_timestamp("starting log for language ".$loglanguagestring);
+
if ($loglanguagestring ne $loglanguagestring_orig) {
(my $dir = $loggingdir) =~ s!/$!!;
open(my $F1, "> $dir.dir");
@@ -714,7 +731,7 @@ for ( my $n = 0; $n <= $#installer::globals::languageproducts; $n++ )
{
if ( $allvariableshashref->{'UPDATE_DATABASE'} )
{
- installer::logger::print_message( "... analyzing update database ...\n" );
+ $installer::logger::Info->print( "... analyzing update database ...\n" );
$refdatabase = installer::windows::update::readdatabase($allvariableshashref, $languagestringref, $includepatharrayref);
if ( $installer::globals::updatedatabase )
@@ -776,7 +793,7 @@ for ( my $n = 0; $n <= $#installer::globals::languageproducts; $n++ )
# files part, language dependent
#####################################
- installer::logger::print_message( "... analyzing files ...\n" );
+ $installer::logger::Info->print( "... analyzing files ...\n" );
my $filesinproductlanguageresolvedarrayref = installer::scriptitems::resolving_all_languages_in_productlists($filesinproductarrayref, $languagesarrayref);
if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles4.log", $filesinproductlanguageresolvedarrayref); }
@@ -833,15 +850,11 @@ for ( my $n = 0; $n <= $#installer::globals::languageproducts; $n++ )
installer::scriptitems::make_filename_language_specific($filesinproductlanguageresolvedarrayref);
if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles10f.log", $filesinproductlanguageresolvedarrayref); }
- # print "... calculating checksums ...\n";
- # my $checksumfile = installer::worker::make_checksum_file($filesinproductlanguageresolvedarrayref, $includepatharrayref);
- # if ( $installer::globals::globallogging ) { installer::files::save_file($loggingdir . $installer::globals::checksumfilename, $checksumfile); }
-
######################################################################################
# Unzipping files with flag ARCHIVE and putting all included files into the file list
######################################################################################
- installer::logger::print_message( "... analyzing files with flag ARCHIVE ...\n" );
+ $installer::logger::Info->print( "... analyzing files with flag ARCHIVE ...\n" );
my @additional_paths_from_zipfiles = ();
@@ -861,7 +874,7 @@ for ( my $n = 0; $n <= $#installer::globals::languageproducts; $n++ )
# Files with flag SUBST_FILENAME
#####################################
- installer::logger::print_message( "... analyzing files with flag SUBST_FILENAME ...\n" );
+ $installer::logger::Info->print( "... analyzing files with flag SUBST_FILENAME ...\n" );
installer::substfilenamefiles::resolving_subst_filename_flag($filesinproductlanguageresolvedarrayref, $allvariableshashref, $languagestringref);
if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles12d.log", $filesinproductlanguageresolvedarrayref); }
@@ -870,7 +883,7 @@ for ( my $n = 0; $n <= $#installer::globals::languageproducts; $n++ )
# Files with flag SCPZIP_REPLACE
#####################################
- installer::logger::print_message( "... analyzing files with flag SCPZIP_REPLACE ...\n" );
+ $installer::logger::Info->print( "... analyzing files with flag SCPZIP_REPLACE ...\n" );
# Editing files with flag SCPZIP_REPLACE.
@@ -881,7 +894,7 @@ for ( my $n = 0; $n <= $#installer::globals::languageproducts; $n++ )
# Files with flag PATCH_SO_NAME
#####################################
- installer::logger::print_message( "... analyzing files with flag PATCH_SO_NAME ...\n" );
+ $installer::logger::Info->print( "... analyzing files with flag PATCH_SO_NAME ...\n" );
# Editing files with flag PATCH_SO_NAME.
@@ -892,7 +905,7 @@ for ( my $n = 0; $n <= $#installer::globals::languageproducts; $n++ )
# Files with flag HIDDEN
#####################################
- installer::logger::print_message( "... analyzing files with flag HIDDEN ...\n" );
+ $installer::logger::Info->print( "... analyzing files with flag HIDDEN ...\n" );
installer::worker::resolving_hidden_flag($filesinproductlanguageresolvedarrayref, $allvariableshashref, "File", $languagestringref);
if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles13c.log", $filesinproductlanguageresolvedarrayref); }
@@ -901,7 +914,7 @@ for ( my $n = 0; $n <= $#installer::globals::languageproducts; $n++ )
# Collecting directories for epm list file
############################################
- installer::logger::print_message( "... analyzing all directories for this product ...\n" );
+ $installer::logger::Info->print( "... analyzing all directories for this product ...\n" );
# There are two ways for a directory to be included into the epm directory list:
# 1. Looking for all destination paths in the files array
@@ -944,7 +957,7 @@ for ( my $n = 0; $n <= $#installer::globals::languageproducts; $n++ )
# language dependent links part
#########################################################
- installer::logger::print_message( "... analyzing links ...\n" );
+ $installer::logger::Info->print( "... analyzing links ...\n" );
my $linksinproductlanguageresolvedarrayref = installer::scriptitems::resolving_all_languages_in_productlists($linksinproductarrayref, $languagesarrayref);
if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productlinks2.log", $linksinproductlanguageresolvedarrayref); }
@@ -973,7 +986,7 @@ for ( my $n = 0; $n <= $#installer::globals::languageproducts; $n++ )
# language dependent unix links part
#########################################################
- installer::logger::print_message( "... analyzing unix links ...\n" );
+ $installer::logger::Info->print( "... analyzing unix links ...\n" );
my $unixlinksinproductlanguageresolvedarrayref = installer::scriptitems::resolving_all_languages_in_productlists($unixlinksinproductarrayref, $languagesarrayref);
if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "unixlinks3.log", $unixlinksinproductlanguageresolvedarrayref); }
@@ -993,7 +1006,7 @@ for ( my $n = 0; $n <= $#installer::globals::languageproducts; $n++ )
if ((!($installer::globals::is_copy_only_project)) && (!($installer::globals::product =~ /ada/i )) && (!($installer::globals::languagepack)))
{
- installer::logger::print_message( "... creating profiles ...\n" );
+ $installer::logger::Info->print( "... creating profiles ...\n" );
$profilesinproductlanguageresolvedarrayref = installer::scriptitems::resolving_all_languages_in_productlists($profilesinproductarrayref, $languagesarrayref);
if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "profiles2.log", $profilesinproductlanguageresolvedarrayref); }
@@ -1035,7 +1048,7 @@ for ( my $n = 0; $n <= $#installer::globals::languageproducts; $n++ )
# language dependent part for folder
#########################################################
- installer::logger::print_message( "... analyzing folder ...\n" );
+ $installer::logger::Info->print( "... analyzing folder ...\n" );
$folderinproductlanguageresolvedarrayref = installer::scriptitems::resolving_all_languages_in_productlists($folderinproductarrayref, $languagesarrayref);
if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "folder2.log", $folderinproductlanguageresolvedarrayref); }
@@ -1047,7 +1060,7 @@ for ( my $n = 0; $n <= $#installer::globals::languageproducts; $n++ )
# language dependent part for folderitems
#########################################################
- installer::logger::print_message( "... analyzing folderitems ...\n" );
+ $installer::logger::Info->print( "... analyzing folderitems ...\n" );
$folderitemsinproductlanguageresolvedarrayref = installer::scriptitems::resolving_all_languages_in_productlists($folderitemsinproductarrayref, $languagesarrayref);
if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "folderitems2.log", $folderitemsinproductlanguageresolvedarrayref); }
@@ -1059,7 +1072,7 @@ for ( my $n = 0; $n <= $#installer::globals::languageproducts; $n++ )
# language dependent part for registryitems
#########################################################
- installer::logger::print_message( "... analyzing registryitems ...\n" );
+ $installer::logger::Info->print( "... analyzing registryitems ...\n" );
$registryitemsinproductlanguageresolvedarrayref = installer::scriptitems::resolving_all_languages_in_productlists($registryitemsinproductarrayref, $languagesarrayref);
if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "registryitems2.log", $registryitemsinproductlanguageresolvedarrayref); }
@@ -1076,7 +1089,7 @@ for ( my $n = 0; $n <= $#installer::globals::languageproducts; $n++ )
if (!($installer::globals::is_copy_only_project))
{
- installer::logger::print_message( "... analyzing modules ...\n" );
+ $installer::logger::Info->print( "... analyzing modules ...\n" );
$modulesinproductlanguageresolvedarrayref = installer::scriptitems::resolving_all_languages_in_productlists($modulesinproductarrayref, $languagesarrayref);
if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes_modules($loggingdir . "modules2.log", $modulesinproductlanguageresolvedarrayref); }
@@ -1170,7 +1183,7 @@ for ( my $n = 0; $n <= $#installer::globals::languageproducts; $n++ )
if (( $installer::globals::iswindowsbuild ) && ( ! $installer::globals::patch )) # Windows specific items: Folder, FolderItem, RegistryItem
{
- installer::logger::print_message( "... creating inf files ...\n" );
+ $installer::logger::Info->print( "... creating inf files ...\n" );
installer::worker::create_inf_file($filesinproductlanguageresolvedarrayref, $registryitemsinproductlanguageresolvedarrayref, $folderinproductlanguageresolvedarrayref, $folderitemsinproductlanguageresolvedarrayref, $modulesinproductlanguageresolvedarrayref, $languagesarrayref, $languagestringref, $allvariableshashref);
if ( $installer::globals::globallogging ) { installer::files::save_array_of_hashes($loggingdir . "productfiles16c.log", $filesinproductlanguageresolvedarrayref); }
}
@@ -1203,7 +1216,7 @@ for ( my $n = 0; $n <= $#installer::globals::languageproducts; $n++ )
# Analyzing the package structure
###########################################################
- installer::logger::print_message( "... analyzing package list ...\n" );
+ $installer::logger::Info->print( "... analyzing package list ...\n" );
my $packages = installer::packagelist::collectpackages($modulesinproductlanguageresolvedarrayref, $languagesarrayref);
installer::packagelist::check_packagelist($packages);
@@ -1240,13 +1253,6 @@ for ( my $n = 0; $n <= $#installer::globals::languageproducts; $n++ )
if (!( $installer::globals::iswindowsbuild ))
{
####################################################
- # Writing log file before packages are packed
- ####################################################
-
- installer::logger::print_message( "... creating log file " . $loggingdir . $installer::globals::logfilename . "\n" );
- installer::files::save_file($loggingdir . $installer::globals::logfilename, \@installer::globals::logfileinfo);
-
- ####################################################
# Creating directories
####################################################
@@ -1254,8 +1260,6 @@ for ( my $n = 0; $n <= $#installer::globals::languageproducts; $n++ )
my $listfiledir = installer::systemactions::create_directories("listfile", $languagestringref);
my $installlogdir = installer::systemactions::create_directory_next_to_directory($installdir, "log");
- # installer::packagelist::add_defaultpathes_into_filescollector($filesinproductlanguageresolvedarrayref);
- # my $installchecksumdir = installer::systemactions::create_directory_next_to_directory($installdir, "checksum");
####################################################
# Reading for Solaris all package descriptions
@@ -1362,9 +1366,8 @@ for ( my $n = 0; $n <= $#installer::globals::languageproducts; $n++ )
push(@{$packages}, $onepackage); # ... and adding it to the end
$installer::globals::poolshiftedpackages{$packagename} = 1; # only shifting each package once
$k--; # decreasing the counter
- my $localinfoline = "Pool: Package \"$packagename\" cannot be created at the moment. Trying again later (1).\n";
- installer::logger::print_message($localinfoline);
- push( @installer::globals::logfileinfo, $localinfoline);
+ $installer::logger::Info->printf("Pool: Package \"%s\" cannot be created at the moment. Trying again later (1).\n", $packagename);
+ $installer::logger::Lang->printf("Pool: Package \"%s\" cannot be created at the moment. Trying again later (1).\n", $packagename);
next; # repeating this iteration with new package
}
}
@@ -1432,8 +1435,9 @@ for ( my $n = 0; $n <= $#installer::globals::languageproducts; $n++ )
if ( ! ( $#{$filesinpackage} > -1 ))
{
push(@installer::globals::emptypackages, $packagename);
- $infoline = "\n\nNo file in package: $packagename \-\> Skipping\n\n";
- push(@installer::globals::logfileinfo, $infoline);
+ $installer::logger::Lang->print("\n");
+ $installer::logger::Lang->print("\n");
+ $installer::logger::Lang->print("No file in package: %s \-\> Skipping\n\n", $packagename);
next; # next package, end of loop !
}
@@ -1447,8 +1451,10 @@ for ( my $n = 0; $n <= $#installer::globals::languageproducts; $n++ )
my $patchfiles = installer::worker::collect_all_items_with_special_flag($filesinpackage ,"PATCH");
if ( ! ( $#{$patchfiles} > -1 ))
{
- $infoline = "\n\nLinux Patch: No patch file in package: $packagename \-\> Skipping\n\n";
- push(@installer::globals::logfileinfo, $infoline);
+ $installer::logger::Lang->print("\n");
+ $installer::logger::Lang->print("\n");
+ $installer::logger::Lang->print("Linux Patch: No patch file in package: %s \-\> Skipping\n\n",
+ $packagename);
next;
}
}
@@ -1542,7 +1548,7 @@ for ( my $n = 0; $n <= $#installer::globals::languageproducts; $n++ )
my $epmfilename = "epm_" . $onepackagename . $linkaddon . ".lst";
- installer::logger::print_message( "... creating epm list file $epmfilename ... \n" );
+ $installer::logger::Info->print( "... creating epm list file $epmfilename ... \n" );
my $completeepmfilename = $listfiledir . $installer::globals::separator . $epmfilename;
@@ -1559,8 +1565,8 @@ for ( my $n = 0; $n <= $#installer::globals::languageproducts; $n++ )
if ( ! ( $#{$filesinpackage} > -1 ))
{
push(@installer::globals::emptypackages, $packagename);
- $infoline = "\nNo file in package: $packagename \-\> Skipping\n";
- push(@installer::globals::logfileinfo, $infoline);
+ $installer::logger::Lang->print("\n");
+ $installer::logger::Lang->print("No file in package: %s \-\> Skipping\n", $packagename);
next; # next package, end of loop !
}
}
@@ -1612,9 +1618,10 @@ for ( my $n = 0; $n <= $#installer::globals::languageproducts; $n++ )
push(@{$packages}, $onepackage); # ... and adding it to the end
$installer::globals::poolshiftedpackages{$packagename} = 1; # only shifting each package once
$k--; # decreasing the counter
- my $localinfoline = "\nPool: Package \"$packagename\" cannot be created at the moment. Trying again later (2).\n";
- installer::logger::print_message($localinfoline);
- push( @installer::globals::logfileinfo, $localinfoline);
+ $installer::logger::Info->print("\n");
+ $installer::logger::Info->print("Pool: Package \"%s\" cannot be created at the moment. Trying again later (2).\n", $packagename);
+ $installer::logger::Lang->print("\n");
+ $installer::logger::Lang->print("Pool: Package \"%s\" cannot be created at the moment. Trying again later (2).\n", $packagename);
next; # repeating this iteration with new package
}
}
@@ -1622,9 +1629,10 @@ for ( my $n = 0; $n <= $#installer::globals::languageproducts; $n++ )
if ( $use_package_from_pool == 4 ) # There was a problem with pooling. Repeat this package immediately.
{
$k--; # decreasing the counter
- my $localinfoline = "\nPool: Package \"$packagename\" had pooling problems. Repeating packaging immediately (3).\n";
- installer::logger::print_message($localinfoline);
- push( @installer::globals::logfileinfo, $localinfoline);
+ $installer::logger::Info->print("\n");
+ $installer::logger::Info->print("Pool: Package \"%s\" had pooling problems. Repeating packaging immediately (3).\n", $packagename);
+ $installer::logger::Lang->print("\n");
+ $installer::logger::Lang->print("Pool: Package \"%s\" had pooling problems. Repeating packaging immediately (3).\n", $packagename);
next; # repeating this iteration
}
@@ -1654,7 +1662,7 @@ for ( my $n = 0; $n <= $#installer::globals::languageproducts; $n++ )
{
# ... now epm can be started, to create the installation sets
- installer::logger::print_message( "... starting patched epm ... \n" );
+ $installer::logger::Info->print( "... starting patched epm ... \n" );
installer::epmfile::call_epm($epmexecutable, $completeepmfilename, $packagename, $includepatharrayref);
@@ -1686,7 +1694,7 @@ for ( my $n = 0; $n <= $#installer::globals::languageproducts; $n++ )
{
# ... now epm can be started, to create the installation sets
- installer::logger::print_message( "... starting unpatched epm ... \n" );
+ $installer::logger::Info->print( "... starting unpatched epm ... \n" );
if ( $installer::globals::call_epm ) { installer::epmfile::call_epm($epmexecutable, $completeepmfilename, $packagename, $includepatharrayref); }
@@ -1906,7 +1914,7 @@ for ( my $n = 0; $n <= $#installer::globals::languageproducts; $n++ )
# Begin of functions that are used for the creation of idt files (Windows only)
#################################################################################
- installer::logger::print_message( "... creating idt files ...\n" );
+ $installer::logger::Info->print( "... creating idt files ...\n" );
installer::logger::include_header_into_logfile("Creating idt files:");
@@ -1998,8 +2006,7 @@ for ( my $n = 0; $n <= $#installer::globals::languageproducts; $n++ )
installer::windows::assembly::add_assembly_condition_into_component_table($filesinproductlanguageresolvedarrayref, $newidtdir);
}
- $infoline = "\n";
- push(@installer::globals::logfileinfo, $infoline);
+ $installer::logger::Lang->print("\n");
# Localizing the language dependent idt files
# For every language there will be a localized msi database
@@ -2019,7 +2026,7 @@ for ( my $n = 0; $n <= $#installer::globals::languageproducts; $n++ )
# Copy the template idt files and the new created idt files into this language directory
- installer::logger::print_message( "... copying idt files ...\n" );
+ $installer::logger::Info->print( "... copying idt files ...\n" );
installer::logger::include_header_into_logfile("Copying idt files to $languageidtdir:");
@@ -2035,14 +2042,14 @@ for ( my $n = 0; $n <= $#installer::globals::languageproducts; $n++ )
my $controlidttable = installer::files::read_file($controlidttablename);
installer::windows::idtglobal::add_language_checkboxes_to_database($controlidttable, $languagesarrayref);
installer::files::save_file($controlidttablename, $controlidttable);
- $infoline = "Added checkboxes for language selection dialog into table $controlidttablename\n";
- push(@installer::globals::logfileinfo, $infoline);
+ $installer::logger::Lang->printf("Added checkboxes for language selection dialog into table %s\n",
+ $controlidttablename);
}
# Now all files are copied into a language specific directory
# The template idt files can be translated
- installer::logger::print_message( "... localizing idt files (language: $onelanguage) ...\n" );
+ $installer::logger::Info->print( "... localizing idt files (language: $onelanguage) ...\n" );
installer::logger::include_header_into_logfile("Localizing idt files (Language: $onelanguage):");
@@ -2072,10 +2079,10 @@ for ( my $n = 0; $n <= $#installer::globals::languageproducts; $n++ )
installer::files::save_file($oneidtfilename, $oneidtfile);
- $infoline = "Translated idt file: $oneidtfilename into language $onelanguage\n";
- push(@installer::globals::logfileinfo, $infoline);
- $infoline = "Used languagefile: $languagefilename\n";
- push(@installer::globals::logfileinfo, $infoline);
+ $installer::logger::Lang->printf("Translated idt file: %s into language %s\n",
+ $oneidtfilename,
+ $onelanguage);
+ $installer::logger::Lang->printf("Used languagefile: %s\n", $languagefilename);
}
# setting the encoding in every table (replacing WINDOWSENCODINGTEMPLATE)
@@ -2101,8 +2108,9 @@ for ( my $n = 0; $n <= $#installer::globals::languageproducts; $n++ )
installer::windows::idtglobal::add_licensefile_to_database($licensefile, $controltable);
installer::files::save_file($controltablename, $controltable);
- $infoline = "Added licensefile $licensefilesource into database $controltablename\n";
- push(@installer::globals::logfileinfo, $infoline);
+ $installer::logger::Lang->printf("Added licensefile %s into database %s\n",
+ $licensefilesource,
+ $controltablename);
}
# include a component into environment table if required
@@ -2160,7 +2168,7 @@ for ( my $n = 0; $n <= $#installer::globals::languageproducts; $n++ )
my $msidatabasename = installer::windows::msiglobal::get_msidatabasename($allvariableshashref, $onelanguage);
my $msifilename = $languageidtdir . $installer::globals::separator . $msidatabasename;
- installer::logger::print_message( "... creating msi database (language $onelanguage) ... \n" );
+ $installer::logger::Info->print( "... creating msi database (language $onelanguage) ... \n" );
installer::windows::msiglobal::set_uuid_into_component_table($languageidtdir, $allvariableshashref); # setting new GUID for the components using the tool uuidgen.exe
installer::windows::msiglobal::prepare_64bit_database($languageidtdir, $allvariableshashref); # making last 64 bit changes
@@ -2202,7 +2210,7 @@ for ( my $n = 0; $n <= $#installer::globals::languageproducts; $n++ )
if ( $allvariableshashref->{'ADDLANGUAGEINDATABASENAME'} ) { installer::windows::msiglobal::add_language_to_msi_database($defaultlanguage, $installdir, $allvariableshashref); }
- installer::logger::print_message( "... generating setup.ini ...\n" );
+ $installer::logger::Info->print( "... generating setup.ini ...\n" );
if ( ! $allvariableshashref->{'NOLOADERREQUIRED'} ) { installer::windows::msiglobal::create_setup_ini($languagesarrayref, $defaultlanguage, $installdir, $allvariableshashref); }
}
@@ -2210,7 +2218,7 @@ for ( my $n = 0; $n <= $#installer::globals::languageproducts; $n++ )
# Analyzing the ScpActions and copying the files into the installation set
# At least the loader.exe
- installer::logger::print_message( "... copying files into installation set ...\n" );
+ $installer::logger::Info->print( "... copying files into installation set ...\n" );
# installer::windows::msiglobal::copy_scpactions_into_installset($defaultlanguage, $installdir, $scpactionsinproductlanguageresolvedarrayref);
installer::worker::put_scpactions_into_installset($installdir);
@@ -2230,7 +2238,7 @@ for ( my $n = 0; $n <= $#installer::globals::languageproducts; $n++ )
installer::windows::msiglobal::copy_child_projects_into_installset($installdir, $allvariableshashref);
}
- installer::logger::print_message( "... creating ddf files ...\n" );
+ $installer::logger::Info->print( "... creating ddf files ...\n" );
# Creating all needed ddf files and generating a list
# for the package process containing all system calls
@@ -2242,17 +2250,7 @@ for ( my $n = 0; $n <= $#installer::globals::languageproducts; $n++ )
# Update and patch reasons the pack order needs to be saved
installer::windows::msiglobal::save_packorder();
- $infoline = "\n";
- push(@installer::globals::logfileinfo, $infoline);
-
- ####################################
- # Writing log file
- # before cab files are packed
- ####################################
-
- installer::logger::print_message( "... creating log file $installer::globals::logfilename \n" );
-
- installer::files::save_file($loggingdir . $installer::globals::logfilename, \@installer::globals::logfileinfo);
+ $installer::logger::Info->print("\n");
#######################################################
# Finally really create the installation packages,
@@ -2261,17 +2259,9 @@ for ( my $n = 0; $n <= $#installer::globals::languageproducts; $n++ )
if ( $installer::globals::iswin ) # only possible on a Windows platform
{
- installer::logger::print_message( "... packaging installation set ... \n" );
+ $installer::logger::Info->print( "... packaging installation set ... \n" );
installer::windows::msiglobal::execute_packaging($installer::globals::packjobref, $loggingdir, $allvariableshashref);
if ( $installer::globals::include_cab_in_msi ) { installer::windows::msiglobal::include_cabs_into_msi($installdir); }
-
- ####################################
- # Writing log file
- # after cab files are packed
- ####################################
-
- installer::logger::print_message( "\n... creating log file $installer::globals::logfilename \n" );
- installer::files::save_file($loggingdir . $installer::globals::logfilename, \@installer::globals::logfileinfo);
}
#######################################################
diff --git a/solenv/bin/modules/installer/archivefiles.pm b/solenv/bin/modules/installer/archivefiles.pm
index 931c7ea..421c418 100644
--- a/solenv/bin/modules/installer/archivefiles.pm
+++ b/solenv/bin/modules/installer/archivefiles.pm
@@ -197,12 +197,10 @@ sub resolving_archive_flag
{
$select_files = 1;
$selectlistfiles = get_patch_file_list( $onefile->{'Selectfiles'} );
- $infoline = "Selected file list defined at file: $onefile->{'Name'} :\n";
- push( @installer::globals::logfileinfo, $infoline);
- for ( my $k = 0; $k <= $#{$selectlistfiles}; $k++ )
+ $installer::logging::Lang->printf("Selected file list defined at file: %s :\n", $onefile->{'Name'});
+ foreach my $line (@$selectlistfiles)
{
- $infoline = "\"${$selectlistfiles}[$k]\"\n";
- push( @installer::globals::logfileinfo, $infoline);
+ $installer::logging::Lang->printf("\"%s\"\n", $line);
}
}
@@ -216,12 +214,10 @@ sub resolving_archive_flag
{
$select_patch_files = 1; # special handling if a Patchlist is defined
$patchlistfiles = get_patch_file_list( $onefile->{'Patchfiles'} );
- $infoline = "Patch file list defined at file: $onefile->{'Name'} :\n";
- push( @installer::globals::logfileinfo, $infoline);
- for ( my $k = 0; $k <= $#{$patchlistfiles}; $k++ )
+ $installer::logger::Lang->printf("Patch file list defined at file: %s :\n", $onefile->{'Name'});
+ foreach my $line (@$patchlistfiles)
{
- $infoline = "\"${$patchlistfiles}[$k]\"\n";
- push( @installer::globals::logfileinfo, $infoline);
+ $installer::logger::Lang->printf("\"%s\"\n", $line);
}
}
@@ -254,8 +250,7 @@ sub resolving_archive_flag
my $zip = Archive::Zip->new();
if ( $zip->read($sourcepath) != AZ_OK )
{
- $infoline = "ERROR: Could not unzip $sourcepath\n";
- push( @installer::globals::logfileinfo, $infoline);
+ $installer::logger::Lang->printf("ERROR: Could not unzip %s\n", $sourcepath);
}
my $counter = 0;
@@ -268,28 +263,27 @@ sub resolving_archive_flag
if (! ( $counter > 0 )) # the zipfile is empty
{
- $infoline = "ERROR: Could not unzip $sourcepath\n";
- push( @installer::globals::logfileinfo, $infoline);
-
+ $installer::logger::Lang->printf("ERROR: Could not unzip %s\n", $sourcepath);
}
else
{
if ( $installer::globals::dounzip ) # really unpacking the files
{
- if ( $zip->extractTree("", $unzipdir) != AZ_OK ) { installer::exiter::exit_program("ERROR: $infoline", "resolving_archive_flag"); }
+ if ( $zip->extractTree("", $unzipdir) != AZ_OK )
+ {
+ installer::exiter::exit_program("ERROR: can not unzip ".$sourcepath, "resolving_archive_flag");
+ }
if (( $^O =~ /cygwin/i ) && ( $contains_dll ))
{
# Make dll's executable
$systemcall = "cd $unzipdir; find . -name \\*.dll -exec chmod 775 \{\} \\\;";
$returnvalue = system($systemcall);
- $infoline = "Systemcall: $systemcall\n";
- push( @installer::globals::logfileinfo, $infoline);
+ $installer::logger::Lang->printf("Systemcall: %s\n", $systemcall);
if ($returnvalue)
{
- $infoline = "ERROR: Could not execute \"$systemcall\"!\n";
- push( @installer::globals::logfileinfo, $infoline);
+ $installer::logger::Lang->printf("ERROR: Could not execute \"\"!\n", $systemcall);
}
}
@@ -299,13 +293,10 @@ sub resolving_archive_flag
$systemcall = "cd $unzipdir; find . -type d -exec chmod 775 \{\} \\\;";
$returnvalue = system($systemcall);
- $infoline = "Systemcall: $systemcall\n";
- push( @installer::globals::logfileinfo, $infoline);
-
+ $installer::logger::Lang->printf("Systemcall: %s\n", $systemcall);
if ($returnvalue)
{
- $infoline = "ERROR: Could not execute \"$systemcall\"!\n";
- push( @installer::globals::logfileinfo, $infoline);
+ $installer::logger::Lang->printf("ERROR: Could not execute \"\"!\n", $systemcall);
}
}
@@ -363,8 +354,10 @@ sub resolving_archive_flag
{
my $value = sprintf("%o", (stat($newfile{'sourcepath'}))[2]);
$newfile{'UnixRights'} = substr($value, 3);
- $infoline = "Setting unix rights for \"$newfile{'sourcepath'}\" to \"$newfile{'UnixRights'}\"\n";
- push( @installer::globals::logfileinfo, $infoline);
+ $installer::logger::Lang->printf(
+ "Setting unix rights for \"%s\" to \"%s\"\n",
+ $newfile{'sourcepath'},
+ $newfile{'UnixRights'});
}
if ( $set_executable_privileges )
@@ -375,8 +368,10 @@ sub resolving_archive_flag
if ( exists($executable_files_in_extensions{$compare_path}) )
{
$newfile{'UnixRights'} = "775";
- $infoline = "Executable in Extension: Setting unix rights for \"$newfile{'sourcepath'}\" to \"$newfile{'UnixRights'}\"\n";
- push( @installer::globals::logfileinfo, $infoline);
+ $installer::logger::Lang->printf(
+ "Executable in Extension: Setting unix rights for \"%s\" to \"%s\"\n",
+ $newfile{'sourcepath'},
+ $newfile{'UnixRights'});
}
}
@@ -384,14 +379,16 @@ sub resolving_archive_flag
{
if ( ! installer::existence::exists_in_array($zipname,$selectlistfiles) )
{
- $infoline = "Removing from ARCHIVE file $onefilename: $zipname\n";
- push( @installer::globals::logfileinfo, $infoline);
+ $installer::logger::Lang->printf("Removing from ARCHIVE file %s: %s\n",
+ $onefilename,
+ $zipname);
next; # ignoring files, that are not included in $selectlistfiles
}
else
{
- $infoline = "Keeping from ARCHIVE file $onefilename: $zipname\n";
- push( @installer::globals::logfileinfo, $infoline);
+ $installer::logger::Lang->printf("Keeping from ARCHIVE file %s: \n",
+ $onefilename,
+ $zipname);
push( @keptfiles, $zipname); # collecting all kept files
}
}
@@ -407,13 +404,9 @@ sub resolving_archive_flag
$newfile{'Styles'} =~ s/\,\s*\,/\,/;
$newfile{'Styles'} =~ s/\(\s*\,/\(/;
$newfile{'Styles'} =~ s/\,\s*\)/\)/;
- # $infoline = "Removing PATCH flag from: $zipname\n";
- # push( @installer::globals::logfileinfo, $infoline);
}
else
{
- # $infoline = "Keeping PATCH flag at: $zipname\n";
- # push( @installer::globals::logfileinfo, $infoline);
push( @keptpatchflags, $zipname); # collecting all PATCH flags
}
}
@@ -430,15 +423,15 @@ sub resolving_archive_flag
$newfile{'destination'} = $destination . $newzipname;
$newfile{'sourcepath'} = $unzipdir . $newzipname;
- $infoline = "RENAME_TO_LANGUAGE: Using $newzipname instead of $zipname!\n";
- push( @installer::globals::logfileinfo, $infoline);
+ $installer::logger::Lang->printf("RENAME_TO_LANGUAGE: Using %s instead of %s!\n",
+ $newzipname,
+ $zipname);
}
my $sourcefiletest = $unzipdir . $zipname;
if ( ! -f $sourcefiletest )
{
- $infoline = "ATTENTION: Unzip failed for $sourcefiletest!\n";
- push( @installer::globals::logfileinfo, $infoline);
+ $installer::logger::Lang->printf("ATTENTION: Unzip failed for %s!\n", $sourcefiletest);
$unziperror = 1;
}
@@ -455,35 +448,25 @@ sub resolving_archive_flag
if ( $select_files )
{
- my $number = $#{$selectlistfiles} + 1;
- $infoline = "SELECTLIST: Number of files in file selection list: $number\n";
- push( @installer::globals::logfileinfo, $infoline);
- $number = $#keptfiles + 1;
- $infoline = "SELECTLIST: Number of kept files: $number\n";
- push( @installer::globals::logfileinfo, $infoline);
-
- for ( my $k = 0; $k <= $#keptfiles; $k++ )
+ $installer::logger::Lang->printf("SELECTLIST: Number of files in file selection list: %d\n",
+ scalar @$selectlistfiles);
+ $installer::logger::Lang->printf("SELECTLIST: Number of kept files: %d\n",
+ scalar @keptfiles);
+
+ foreach my $name (@keptfiles)
{
- $infoline = "KEPT FILES: $keptfiles[$k]\n";
- push( @installer::globals::logfileinfo, $infoline);
+ $installer::logger::Lang->printf("KEPT FILES: %s\n", $name);
}
- my @warningfiles = ();
-
- for ( my $k = 0; $k <= $#{$selectlistfiles}; $k++ )
+ foreach my $name (@$selectlistfiles)
{
- if ( ! installer::existence::exists_in_array(${$selectlistfiles}[$k],\@keptfiles) )
+ if ( ! installer::existence::exists_in_array($name,\@keptfiles) )
{
- push(@warningfiles, ${$selectlistfiles}[$k]);
+ $installer::logger::Lang->printf(
+ "WARNING: %s not included in install set (does not exist in zip file)!\n",
+ $name);;
}
}
-
- for ( my $k = 0; $k <= $#warningfiles; $k++ )
- {
- $infoline = "WARNING: $warningfiles[$k] not included in install set (does not exist in zip file)!\n";
- push( @installer::globals::logfileinfo, $infoline);
- }
-
}
# Comparing the content of @keptpatchflags and $patchlistfiles
@@ -493,41 +476,32 @@ sub resolving_archive_flag
if ( $select_patch_files )
{
- my $number = $#{$patchlistfiles} + 1;
- $infoline = "PATCHLIST: Number of files in patch list: $number\n";
- push( @installer::globals::logfileinfo, $infoline);
- $number = $#keptpatchflags + 1;
- $infoline = "PATCHLIST: Number of kept PATCH flags: $number\n";
- push( @installer::globals::logfileinfo, $infoline);
-
- for ( my $k = 0; $k <= $#keptpatchflags; $k++ )
+ $installer::logger::Lang->printf("PATCHLIST: Number of files in patch list: %d\n",
+ scalar @$patchlistfiles);
+ $installer::logger::Lang->printf("PATCHLIST: Number of kept PATCH flags: %d\n",
+ scalar @keptpatchflags);
+
+ foreach my $flag (@keptpatchflags)
{
- $infoline = "KEPT PATCH FLAGS: $keptpatchflags[$k]\n";
- push( @installer::globals::logfileinfo, $infoline);
+ $installer::logger::Lang->printf("KEPT PATCH FLAGS: %s\n",
+ $flag);
}
- my @warningfiles = ();
-
- for ( my $k = 0; $k <= $#{$patchlistfiles}; $k++ )
+ foreach my $name (@$patchlistfiles)
{
- if ( ! installer::existence::exists_in_array(${$patchlistfiles}[$k],\@keptpatchflags) )
+ if ( ! installer::existence::exists_in_array($name,\@keptpatchflags) )
{
- push(@warningfiles, ${$patchlistfiles}[$k]);
+ $installer::logger::Lang->printf(
+ "WARNING: %s did not keep PATCH flag (does not exist in zip file)!\n",
+ $name);
}
}
-
- for ( my $k = 0; $k <= $#warningfiles; $k++ )
- {
- $infoline = "WARNING: $warningfiles[$k] did not keep PATCH flag (does not exist in zip file)!\n";
- push( @installer::globals::logfileinfo, $infoline);
- }
}
if ( $unziperror )
{
installer::logger::print_warning( "Repeating to unpack $sourcepath! \n" );
- $infoline = "ATTENTION: Repeating to unpack $sourcepath !\n";
- push( @installer::globals::logfileinfo, $infoline);
+ $installer::logger::Lang->printf("ATTENTION: Repeating to unpack %s!\n", $sourcepath);
$repeat_unzip = 1;
$maxcounter++;
@@ -538,8 +512,7 @@ sub resolving_archive_flag
}
else
{
- $infoline = "Info: $sourcepath unpacked without problems !\n";
- push( @installer::globals::logfileinfo, $infoline);
+ $installer::logger::Lang->printf("Info: %s unpacked without problems !\n", $sourcepath);
$repeat_unzip = 0;
$maxcounter = 0;
}
@@ -551,8 +524,7 @@ sub resolving_archive_flag
}
}
- $infoline = "\n";
- push( @installer::globals::logfileinfo, $infoline);
+ $installer::logger::Lang->print("\n");
return \@newallfilesarray;
}
diff --git a/solenv/bin/modules/installer/configuration.pm b/solenv/bin/modules/installer/configuration.pm
index 325e9fa..5444f94 100644
--- a/solenv/bin/modules/installer/configuration.pm
+++ b/solenv/bin/modules/installer/configuration.pm
@@ -760,18 +760,16 @@ sub save_and_zip_configfile
chdir($currentdir);
- my $infoline = "Systemcall: $systemcall\n";
- push( @installer::globals::logfileinfo, $infoline);
+ $installer::logger::Lang->printf("Systemcall: %s\n", $systemcall);
if ($returnvalue)
{
- $infoline = "ERROR: Could not zip $savefilename to $zipfilename\n";
+ $installer::logger::Lang->printf("ERROR: Could not zip %s to %s\n", $savefilename, $zipfilename);
}
else
{
- $infoline = "SUCCESS: Zipped file $savefilename to $zipfilename\n";
+ $installer::logger::Lang->printf("SUCCESS: Zipped file %s to %s\n", $savefilename, $zipfilename);
}
- push( @installer::globals::logfileinfo, $infoline);
return $zipfilename;
}
@@ -889,9 +887,7 @@ sub create_configuration_files
}
}
- my $infoline = "\n";
- push( @installer::globals::logfileinfo, $infoline);
-
+ $installer::logger::Lang->print("\n");
}
1;
diff --git a/solenv/bin/modules/installer/control.pm b/solenv/bin/modules/installer/control.pm
index bad8c98..f48e6c1 100644
--- a/solenv/bin/modules/installer/control.pm
+++ b/solenv/bin/modules/installer/control.pm
@@ -32,6 +32,8 @@ use installer::pathanalyzer;
use installer::scriptitems;
use installer::systemactions;
+our @ErrorMessages = undef;
+
#########################################################
# Function that can be used for additional controls.
# Search happens in $installer::globals::patharray.
@@ -41,9 +43,10 @@ sub check_needed_files_in_path
{
my ( $filesref ) = @_;
- foreach $onefile ( @{$filesref} )
+ my $error = 0;
+ foreach my $onefile ( @{$filesref} )
{
- installer::logger::print_message( "...... searching $onefile ..." );
+ $installer::logger::Info->printf("...... searching %s ...\n", $onefile);
my $fileref = installer::scriptitems::get_sourcepath_from_filename_and_includepath_classic(\$onefile, $installer::globals::patharray , 0);
@@ -54,7 +57,7 @@ sub check_needed_files_in_path
}
else
{
- installer::logger::print_message( "\tFound: $$fileref\n" );
+ $installer::logger::Info->print( "\tFound: $$fileref\n" );
}
}
@@ -126,7 +129,7 @@ sub check_system_path
foreach $onefile ( @needed_files_in_path )
{
- installer::logger::print_message( "...... searching $onefile ..." );
+ $installer::logger::Info->printf("...... searching %s ...\n", $onefile);
my $fileref = installer::scriptitems::get_sourcepath_from_filename_and_includepath_classic(\$onefile, $patharrayref , 0);
@@ -137,7 +140,7 @@ sub check_system_path
}
else
{
- installer::logger::print_message( "\tFound: $$fileref\n" );
+ $installer::logger::Info->print( "\tFound: $$fileref\n" );
# Saving the absolut path for msitran.exe. This is required for the determination of the checksum.
if ( $onefile eq "msitran.exe" ) { $installer::globals::msitranpath = $$fileref; }
}
@@ -180,7 +183,7 @@ sub check_system_path
{
$installer::globals::upx_in_path = 1;
$installer::globals::upxfile = $$upxfileref;
- installer::logger::print_message( "\tFound: $$upxfileref\n" );
+ $installer::logger::Info->print( "\tFound: $$upxfileref\n" );
}
}
@@ -204,13 +207,11 @@ sub get_makecab_version
if ($returnvalue)
{
- $infoline = "ERROR: Could not execute \"$systemcall\"!\n";
- push( @installer::globals::globallogfileinfo, $infoline);
+ $installer::logger::Global->printf("ERROR: Could not execute \"%s\"!\n", $systemcall);
}
else
{
- $infoline = "Success: Executed \"$systemcall\" successfully!\n";
- push( @installer::globals::globallogfileinfo, $infoline);
+ $installer::logger::Global->printf("Success: Executed \"%s\" successfully!\n", $systemcall);
my $versionline = "";
@@ -223,8 +224,7 @@ sub get_makecab_version
}
}
- $infoline = $versionline;
- push( @installer::globals::globallogfileinfo, $infoline);
+ $installer::logger::Global->printf("%s\n", $versionline);
if ( $versionline =~ /\bVersion\b\s+(\d+[\d\.]+\d+)\s+/ )
{
@@ -238,8 +238,7 @@ sub get_makecab_version
$makecabversion = $1;
}
- $infoline = "Using version: " . $makecabversion . "\n";
- push( @installer::globals::globallogfileinfo, $infoline);
+ $installer::logger::Global->printf("Using version: %s\n", $makecabversion);
}
return $makecabversion;
@@ -258,8 +257,7 @@ sub check_makecab_version
my $makecabversion = get_makecab_version();
- my $infoline = "Tested version: " . $installer::globals::controlledmakecabversion . "\n";
... etc. - the rest is truncated
More information about the Libreoffice-commits
mailing list