fixed runtime error with module::sendprogram default servername value

This commit is contained in:
2021-11-10 14:54:42 +01:00
parent fb7daf426f
commit adc6cf214a
4 changed files with 8 additions and 6 deletions

View File

@ -3466,7 +3466,7 @@ sls_detector_module Module::readSettingsFile(const std::string &fname,
void Module::sendProgram(bool blackfin, std::vector<char> buffer, void Module::sendProgram(bool blackfin, std::vector<char> buffer,
const int functionEnum, const int functionEnum,
const std::string &functionType, const std::string &functionType,
const std::string &serverName) { const std::string serverName) {
LOG(logINFO) << "Module " << moduleIndex << " (" << shm()->hostname LOG(logINFO) << "Module " << moduleIndex << " (" << shm()->hostname
<< "): Sending " << functionType; << "): Sending " << functionType;
@ -3484,9 +3484,11 @@ void Module::sendProgram(bool blackfin, std::vector<char> buffer,
client.Send(cChecksum); client.Send(cChecksum);
// send server name // send server name
char sname[MAX_STR_LENGTH] = {0}; if (functionEnum == F_UPDATE_DETECTOR_SERVER) {
strcpy(sname, serverName.c_str()); char sname[MAX_STR_LENGTH] = {0};
client.Send(sname); strcpy(sname, serverName.c_str());
client.Send(sname);
}
// validate memory allocation etc in detector // validate memory allocation etc in detector
if (client.Receive<int>() == FAIL) { if (client.Receive<int>() == FAIL) {

View File

@ -751,7 +751,7 @@ class Module : public virtual slsDetectorDefs {
bool trimbits = true); bool trimbits = true);
void sendProgram(bool blackfin, std::vector<char> buffer, void sendProgram(bool blackfin, std::vector<char> buffer,
const int functionEnum, const std::string &functionType, const int functionEnum, const std::string &functionType,
const std::string &serverName = nullptr); const std::string serverName = "");
void simulatingActivityinDetector(const std::string &functionType, void simulatingActivityinDetector(const std::string &functionType,
const int timeRequired); const int timeRequired);

View File

@ -9,7 +9,7 @@
#define APICTB 0x211110 #define APICTB 0x211110
#define APIGOTTHARD 0x211110 #define APIGOTTHARD 0x211110
#define APIGOTTHARD2 0x211110 #define APIGOTTHARD2 0x211110
#define APIJUNGFRAU 0x211110
#define APIMYTHEN3 0x211110 #define APIMYTHEN3 0x211110
#define APIMOENCH 0x211110 #define APIMOENCH 0x211110
#define APIEIGER 0x211110 #define APIEIGER 0x211110
#define APIJUNGFRAU 0x211110