Sophie

Sophie

distrib > Mageia > 1 > i586 > by-pkgid > 8d94992bbfa224fc7fc355e86b519d40 > files > 66

libreoffice-3.3.3.1-0.1.mga1.src.rpm

--- solenv/bin/modules/installer/globals.pm~	2010-12-18 14:23:42.000000000 +0100
+++ solenv/bin/modules/installer/globals.pm	2011-01-27 20:17:36.073565393 +0100
@@ -411,8 +411,8 @@
     %usedtreeconditions = ();
     %moduledestination = ();
     
-    $unomaxservices = 1800; # regcomp -c argument length
-    $javamaxservices = 15;
+    $unomaxservices = 1; # regcomp -c argument length
+    $javamaxservices = 1;
     
     $one_cab_file = 0;
     $fix_number_of_cab_files = 1;
--- solenv/bin/modules/installer/servicesfile.pm~	2010-11-11 20:08:56.000000000 +0100
+++ solenv/bin/modules/installer/servicesfile.pm	2011-01-27 20:22:03.017565388 +0100
@@ -228,17 +228,31 @@
             if ( $i % $installer::globals::javamaxservices == 0 || $i > $#{$javacomponents} )	# limiting to $installer::globals::maxservices files
             {
                 my @regcompoutput = ();
+		my @throwregcompoutput = ();
 
                 my $systemcall = "$installer::globals::wrapcmd $$regcompfileref -register -br ".fix_cygwin_path($regcomprdb)." -r ".fix_cygwin_path($servicesfile)." -c " . $installer::globals::quote . $filestring . $installer::globals::quote . " -l com.sun.star.loader.Java2 -wop=" . $installer::globals::quote . $javaservicesurlprefix . $installer::globals::quote ." -env:URE_INTERNAL_JAVA_DIR=" . $installer::globals::quote . make_file_url($$ure_internal_java_dir_ref) . $installer::globals::quote . " 2\>\&1 |";
 
-                open (REG, "$systemcall");
-                while (<REG>) {push(@regcompoutput, $_); }
-                close (REG);
-
-                my $returnvalue = $?;	# $? contains the return value of the systemcall
-
+                my $returnvalue = 1;
                 my $infoline = "Systemcall: $systemcall\n";
-                push( @installer::globals::logfileinfo, $infoline);
+
+                for ( my $j = 0; $j <= 10; $j++) {
+			open (REG, "$systemcall");
+                        while (<REG>) {push(@throwregcompoutput, $_); }
+                        close (REG);
+       
+                        $returnvalue = $?;      # $? contains the return value of the systemcall
+
+                        push( @installer::globals::logfileinfo, $infoline);
+
+                        if ($returnvalue == 0) {
+				last;
+			}
+
+			$infoline = "RATS: attempt $j: $systemcall\n";
+			push( @installer::globals::logfileinfo, $infoline);
+		}
+		
+		$regcompoutput = $throwregcompoutput;
 
                 for ( my $k = 0; $k <= $#regcompoutput; $k++ ) { push( @installer::globals::logfileinfo, "$regcompoutput[$k]"); }