X-Git-Url: http://www.dxcluster.org/gitweb/gitweb.cgi?a=blobdiff_plain;f=perl%2Fcluster.pl;h=620c7e77c90a7500a5a8ee5b6d7904cd6ab090ef;hb=e72ce56ce6973656acb064366459d54cda85f8cc;hp=d3c905340ee7cf7d2875712c0bd467695b9739ec;hpb=0a67d4205afe425cd3e06516835956cbb94dff49;p=spider.git diff --git a/perl/cluster.pl b/perl/cluster.pl index d3c90534..620c7e77 100755 --- a/perl/cluster.pl +++ b/perl/cluster.pl @@ -240,10 +240,12 @@ sub cease DXUser::sync; - eval { - Local::finish(); # end local processing - }; - dbg("Local::finish error $@") if $@; + if (defined &Local::finish) { + eval { + Local::finish(); # end local processing + }; + dbg("Local::finish error $@") if $@; + } # disconnect nodes foreach $dxchan (DXChannel::get_all_nodes) { @@ -491,10 +493,13 @@ DXDb::load(); # starting local stuff dbg("doing local initialisation ..."); QSL::init(1); -eval { - Local::init(); -}; -dbg("Local::init error $@") if $@; +if (defined &Local::init) { + eval { + Local::init(); + }; + dbg("Local::init error $@") if $@; +} + # this, such as it is, is the main loop! dbg("orft we jolly well go ..."); @@ -534,10 +539,12 @@ for (;;) { DXDupe::process(); AGWMsg::process(); - eval { - Local::process(); # do any localised processing - }; - dbg("Local::process error $@") if $@; + if (defined &Local::process) { + eval { + Local::process(); # do any localised processing + }; + dbg("Local::process error $@") if $@; + } } if ($decease) { last if --$decease <= 0;