fixed problem where two consoles with same call stopped the cluster
[spider.git] / perl / cluster.pl
index 1af0388a3449ed82a9bfdeb7a370f4579505e3a8..fdfff04f110abb24807561310a44543b76e96f24 100755 (executable)
@@ -67,7 +67,7 @@ package main;
 
 @inqueue = ();                                 # the main input queue, an array of hashes
 $systime = 0;                                  # the time now (in seconds)
-$version = "1.30";                             # the version no of the software
+$version = "1.31";                             # the version no of the software
 $starttime = 0;                 # the starting time of the cluster   
 $lockfn = "cluster.lock";       # lock file name
       
@@ -89,6 +89,8 @@ sub already_conn
        sleep(1);
        dbg('chan', "-> Z $call bye\n");
        $conn->send_now("Z$call|bye"); # this will cause 'client' to disconnect
+       sleep(1);
+       $conn->disconnect;
 }
 
 # handle incoming messages
@@ -109,7 +111,7 @@ sub rec
                 # is there one already connected to me ? 
                my $user = DXUser->get($call);
                if (DXChannel->get($call)) {
-                       my $mess = DXM::msg($lang, $user->sort eq 'A' ? 'concluster' : 'conother', $call);
+                       my $mess = DXM::msg($lang, $user->sort eq 'A' ? 'concluster' : 'conother', $call);
                        already_conn($conn, $call, $mess);
                        return;
                }