From 9dbbb14f150c2b41bab19bea23468352219ce793 Mon Sep 17 00:00:00 2001 From: Francois Pons Date: Tue, 26 Sep 2000 17:32:48 +0000 Subject: *** empty log message *** --- perl-install/ChangeLog | 5 +++++ perl-install/pkgs.pm | 9 +++++++-- 2 files changed, 12 insertions(+), 2 deletions(-) (limited to 'perl-install') diff --git a/perl-install/ChangeLog b/perl-install/ChangeLog index 2812b6721..db5988a0e 100644 --- a/perl-install/ChangeLog +++ b/perl-install/ChangeLog @@ -1,3 +1,8 @@ +2000-09-26 François Pons + + * pkgs.pm: fixed correction size code to make (really) a true + bijection between corrected and rpm size. + 2000-09-26 DrakX * snapshot uploaded diff --git a/perl-install/pkgs.pm b/perl-install/pkgs.pm index 5f81d914d..036141472 100644 --- a/perl-install/pkgs.pm +++ b/perl-install/pkgs.pm @@ -199,8 +199,13 @@ my $A = -121568/100000000000; # -1.21568e-05; #- because perl does like that on my $B = 121561/100000; # 1.21561 my $C = -239889/10000; # -23.9889 #- doesn't take hdlist's into account as getAvailableSpace will do it. my $D = (-sqrt(sqr($B - 1) - 4 * $A * $C) - ($B - 1)) / 2 / $A; #- $A is negative so a positive solution is with - sqrt ... -sub correctSize { $_[0] < $D ? ($A * $_[0] + $B) * $_[0] + $C : $_[0] } #- size correction in MB. -sub invCorrectSize { $_[0] < $D ? (sqrt(sqr($B) + 4 * $A * ($_[0] - $C)) - $B) / 2 / $A : $_[0]; } #- size correction in MB. +sub correctSize { + my $csz = ($A * $_[0] + $B) * $_[0] + $C; + $csz > $_[0] ? $csz : $_[0]; #- size correction (in MB) should be above input argument (as $A is negative). +sub invCorrectSize { + my $sz = $_[0] < $D ? (sqrt(sqr($B) + 4 * $A * ($_[0] - $C)) - $B) / 2 / $A : $_[0]; + $sz < $_[0] ? $sz : $_[0]; +} sub selectedSize { my ($packages) = @_; -- cgit v1.2.1