You could try this:FILE: foreach my $file (sort { $a <=> $b } @allfiles) {
$file =~ s/^$config{'basepath'}$key\///;
$file =~ s/\.dat$//;
if (my($title, $reserve, $inc, $desctitcolor, $desctitsize, $desctit, $desccolor, $descsize, $desc, $image1, $image2, $image3, $image4, $feature, $grabber, $dutch, $qty, $payment, $condition, $shipping, $relist, $relistcnt, $gallery, $buyit, $music, $usecounter, @bids) = read_item_file($key,$file)) {
my ($alias, $email, $bid, $time, $add1, $add2, $add3, $college, $class, $oqty, $soldqty) = &read_bid($bids[$#bids]);
my ($selleralias, $selleremail, $sellerbid, $sellertime, $selleradd1, $selleradd2, $selleradd3) = &read_bid($bids[0]);
my @firstbid = read_bid($bids[0]);
# EITHER:
if ($alias eq $firstbid[0]) {
# OR:
if ($alias eq $selleralias) {
...
...
...
-----------
I have never seen this before to be used to do something as needed here:
if (($selleralias) && ($file)) {
Could be part of your problem. But because I found no similar routine for such does not mean it would not work anyway...
Homer
If you don't know where you're going, any road will get you there.