slsDetector: connect stop socket in checkonline so that it does not stick to its initialized default file descriptor zero (which gets closed upon socket deletion)

This commit is contained in:
maliakal_d 2018-08-03 14:54:32 +02:00
parent 05055eb283
commit 147194e8af
2 changed files with 21 additions and 1 deletions

View File

@ -1,5 +1,5 @@
PKGDIR = ../..
LIBDIR = $(PKGDIR)/bin
LIBDIR = $(PKGDIR)/build/bin
INCLUDES = -I . -I$(PKGDIR)/slsReceiverSoftware/include -I$(PKGDIR)/slsDetectorSoftware/slsDetectorAnalysis -I$(LIBDIR) -I$(PKGDIR)/slsDetectorSoftware/slsDetector
SRC_DET = mainClient.cpp
SRC_REC = mainReceiver.cpp

View File

@ -1756,6 +1756,26 @@ string slsDetector::checkOnline() {
disconnectControl();
#ifdef VERBOSE
std::cout<< "online!" << std::endl;
#endif
}
}
//still cannot connect to socket, stopSocket=0
if(stopSocket){
if (connectStop() == FAIL) {
stopSocket->SetTimeOut(5);
thisDetector->onlineFlag=OFFLINE_FLAG;
delete stopSocket;
stopSocket=NULL;
retval = string(thisDetector->hostname);
#ifdef VERBOSE
std::cout<< "stop offline!" << std::endl;
#endif
} else {
thisDetector->onlineFlag=ONLINE_FLAG;
stopSocket->SetTimeOut(100);
disconnectStop();
#ifdef VERBOSE
std::cout<< "stop online!" << std::endl;
#endif
}
}