On Wednesday 19 July 2006 09:34, Paul Slootman wrote: > > --- /tmp/dirvish-expire 2006-07-19 08:59:01.000000000 -0700 > > +++ /usr/sbin/dirvish-expire 2006-07-19 08:58:31.000000000 -0700 > > @@ -145,7 +145,7 @@ > > qw(VAULT:BRANCH IMAGE CREATED EXPIRED); > > } > > > > -for $expire (sort(imsort(@expires))) > > +for $expire (sort(imsort @expires)) > > { > > my ($created, $expired); > > ($created = $$expire{created}) =~ s/:\d\d$//;
dirvish 1.2-1 has the "imsort @expires" line. dirvish 1.2.1-0.1 has the "imsort(@expires)" line. dirvish 1.2.1 downloaded from www.dirvish.org has "imsort @expires". The culprit is debian/patches/01_imsort-reserved-warning.dpatch which sticks the extra parentheses in there. The syntax "sort(imsort @expires)" tells perl to sort @expires using the imsort function to do the comparison (imsort returns a scalar integer). The syntax "sort(imsort(@expires))" tells perl to call imsort on the @expires list, and then sort the result using the string comparison operator. Clearly, the latter is incorrect, because instead of looping over the sorted list of expires, perl will loop over a single scalar integer. Regards, -- Dave Carrigan Seattle, WA, USA [EMAIL PROTECTED] | http://www.rudedog.org/ UNIX-Apache-Perl-Linux-Firewalls-LDAP-C-C++-DNS-PalmOS-PostgreSQL-MySQL-Postfix
pgpIZFvAdb97p.pgp
Description: PGP signature