#!/afs/athena/contrib/perl/p

open(OUT, STDOUT);

if (@ARGV) {
    for (@ARGV) {
        &do_file($_);
    }
}

sub do_file {
    local($fname) = @_;
    local($counter);

    $counter = 0;

    open(IN, "<" . $fname);
    open(OUT, ">hacked/" . $fname);

    while(<IN>) {
	$counter++;
	s/(\s+)free\(([^\)]*)\)/$1neatfree\(\"$fname \(line $counter\)\", $2\)/;
	print OUT;
    }

    close(IN);
    close(OUT);
}
