perl-5.8.0/cnfsstat
Weber, Markus
fvd at de.kpn-eurorings.net
Thu Nov 7 12:57:29 UTC 2002
Hi, this might be a duplicate of
http://marc.theaimsgroup.com/?l=3Dinn-workers&m=3D102925659707682&w=3D2
with just some minor additions. Plattform: Solaris 8, perl-5.8.0,
gcc 3.2, inn-2.3.3.
Symptoms: cnfsstat generates inaccurate output (rounding errors)
Analysis: The problem seems to be of some changes in perl-5.8.0
and the return of BigInts (sorry, I'm not a perl guy,
but this is the stripped down example):
use Math::BigInt;
sub d1 { my $i =3D new Math::BigInt '20483';
$i =3D~ s/^\+//; return $i}
printf d1() / 7.0;
With perl-5.8.0 this prints an integer, while with for-
mer version it was a float. Thus human_printable in
cnfsstat fails and prints values rounded downwards to
the last integer. Might be at the end a perl problem?
Workaround: For me it was sufficient to change in bhex
my $integerValue =3D new Math::BigInt '0';
into
my $integerValue =3D 0; #new Math::BigInt '0';
but this might break the with larger files ...
Markus
--=20
[KPN Euro(rings|link) * Emmy-Noether-Str. 9 * D--76131 Karlsruhe]=20
[E] Markus Weber <fvd at de.kpn-eurorings.net> / <fvd at kpn-eurolinks.net>
[T] +49 721 9652 213 [F] +49 721 9652 171 [IRC] FvD [P] <fvd at icmp.de>
More information about the inn-bugs
mailing list