X-Git-Url: http://www.dxcluster.org/gitweb/gitweb.cgi?a=blobdiff_plain;f=perl%2FScript.pm;h=1e94ce595325e61cb69bd4c14ceb140330100751;hb=f45d04e999b798f21ddcb887cf1bb9f3eb3a27b4;hp=716ee46e84d1f9655d02a5659609b79aeeb55685;hpb=1a4080d4bc98aeda2a4b2467225c64732412fdba;p=spider.git diff --git a/perl/Script.pm b/perl/Script.pm index 716ee46e..1e94ce59 100644 --- a/perl/Script.pm +++ b/perl/Script.pm @@ -22,7 +22,7 @@ my $base = "$main::root/scripts"; sub clean { my $s = shift; - $s =~ s/[^-\w\.]//g; + $s =~ s/([-\w\d_]+)/$1/g; return $s; } @@ -118,5 +118,26 @@ sub lines sub erase { my $self = shift; - unlink $self->{fn}; + my $call = clean($self->call); + + my $fn; + my $try; + + $try = "$base/" . clean(lc $self->call); + if (-w $try) { + $fn = $try; + } else { + $try = "$base/" . clean(uc $self->call); + if (-w $try) { + $fn = $try; + } + } + + if ($fn && -w $fn) { + unless (unlink $fn) { + return ($self->msg('m22'. $call)); + } + return ($self->msg('m20', $call)); + } + return ($self->msg('e3', "unset/startup", $call)); }