diff --git a/bin/auto b/bin/auto index 2a4b60a..070c99f 100755 --- a/bin/auto +++ b/bin/auto @@ -174,7 +174,7 @@ foreach my $cskey (keys %cservers) { my $data = readline($SOCKET{$cskey}); # Lost connection: kill process. unless (defined $data) { - die; + exit; } # Get rid of the newlines. chomp $data; @@ -201,6 +201,7 @@ else { } undef $it; +println "mk" and mod_load("m_hw"); # Keep Auto alive. while (1) { sleep 1; } @@ -223,3 +224,15 @@ sub socksnd return 0; } } + +# Load a module. +sub mod_load { + my ($module) = @_; + + if (-e "$Bin/../modules/".lc($module).".pm") { + do "$Bin/../modules/".lc($module).".pm" and return 1 or print $@ and return 0; + } + else { + return 0; + } +}