Megatest

Diff
Login

Differences From Artifact [b9c6fed28d]:

To Artifact [cc2742f5f6]:


638
639
640
641
642
643
644



645

646
647
648
649
650
651
652
653
654
655


656
657
658
659
660
661
662
638
639
640
641
642
643
644
645
646
647

648
649
650
651
652
653
654
655
656


657
658
659
660
661
662
663
664
665







+
+
+
-
+








-
-
+
+







				     (same-host (or (not prime-host) ;; i.e. this is the first host
						    (equal? prime-host host)))
				     (keep-srv  (and good-ping same-host)))
				(if keep-srv	
				    (loop (cdr servrs)
					  host
					  (cons servdat result))
				    (let* ((modtime (handle-exceptions
						     exn
						     9999 ;; file probably disappeared
				    (let* ((modtime (file-modification-time servinfofile)))
						     (file-modification-time servinfofile))))
				      ;; if the .servinfo hasn't been touched in five min
				      ;; we can be pretty sure the server is truly dead
				      (if (> (- (current-seconds) modtime) 360)
					  (handle-exceptions
					   exn
					   (debug:print-info 0 *default-log-port*
							     "Error removing server info file: "servinfofile", "
							     (condition->list exn))
					   (delete-file* servinfofile))
					  (loop (cdr servrs) prime-host result))))))
					   (delete-file* servinfofile)))
				      (loop (cdr servrs) prime-host result)))))
			     (else
			      ;; can't delete it as we don't have a filename. NOTE: Should never get here.
			      (debug:print-info 0 *default-log-port* "ERROR: bad servinfo record \""servdat"\"")
			      (loop (cdr servrs) prime-host result)) ;; drop 
			     )))))
	       (home-host (if (null? good-srvrs)
			      #f