X-Git-Url: http://gb7djk.dxcluster.net/gitweb/gitweb.cgi?a=blobdiff_plain;f=perl%2FCmdAlias.pm;h=8e7f8834ea4503f03fc1b9b805672026d2246982;hb=a0cf638d2ec10e9f464bb749cf1b70fd105baf9f;hp=e5f6686ab05811e500603b470364806f923809b0;hpb=1d5894e63b48f6996ef75654faf0806d69c7b502;p=spider.git diff --git a/perl/CmdAlias.pm b/perl/CmdAlias.pm index e5f6686a..8e7f8834 100644 --- a/perl/CmdAlias.pm +++ b/perl/CmdAlias.pm @@ -41,34 +41,31 @@ use Carp; use strict; -use vars qw(%alias $cmd_mtime $localcmd_mtime $fn $localfn); +use vars qw(%alias $fn $localfn); %alias = (); -$cmd_mtime = 1; -$localcmd_mtime = 1; - $fn = "$main::cmd/Aliases"; $localfn = "$main::localcmd/Aliases"; -sub checkfiles +sub load { - my $m = -M $fn; -# print "m: $m oldmtime: $cmd_mtime\n"; - if ($m < $cmd_mtime) { - do $fn; + my $ref = shift; + if (-e $localfn) { + do $localfn; + return ($@) if $@ && ref $ref; + confess $@ if $@; + return (); + } + do $fn; + return ($@) if $@ && ref $ref; confess $@ if $@; - $cmd_mtime = $m; - $localcmd_mtime = 0; - } - if (-e $localfn) { - $m = -M $localfn; - if ($m < $localcmd_mtime) { - do $localfn; - confess $@ if $@; - $localcmd_mtime = $m; - } - } + return (); +} + +sub init +{ + load(); } # @@ -82,8 +79,6 @@ sub get_cmd $let = lc $let; - checkfiles(); - $ref = $alias{$let}; return undef if !$ref;