server: Z21 ClientKernel, try/catch when updating decoder
Dieser Commit ist enthalten in:
Ursprung
3e3eaca008
Commit
50279a12d9
@ -133,20 +133,27 @@ void ClientKernel::receive(const Message& message)
|
||||
speed = reply.speedStep(), speedMax=reply.speedSteps(),
|
||||
dir = reply.direction(), val, maxFunc]()
|
||||
{
|
||||
if(auto decoder = m_decoderController->getDecoder(DCC::getProtocol(address), address))
|
||||
try
|
||||
{
|
||||
float throttle = Decoder::speedStepToThrottle(speed, speedMax);
|
||||
|
||||
decoder->emergencyStop = isEStop;
|
||||
decoder->direction = dir;
|
||||
|
||||
decoder->throttle = throttle;
|
||||
|
||||
for(int i = 0; i <= maxFunc; i++)
|
||||
if(auto decoder = m_decoderController->getDecoder(DCC::getProtocol(address), address))
|
||||
{
|
||||
decoder->setFunctionValue(i, val[i]);
|
||||
float throttle = Decoder::speedStepToThrottle(speed, speedMax);
|
||||
|
||||
decoder->emergencyStop = isEStop;
|
||||
decoder->direction = dir;
|
||||
|
||||
decoder->throttle = throttle;
|
||||
|
||||
for(int i = 0; i <= maxFunc; i++)
|
||||
{
|
||||
decoder->setFunctionValue(i, val[i]);
|
||||
}
|
||||
}
|
||||
}
|
||||
catch(...)
|
||||
{
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
break;
|
||||
|
||||
Laden…
x
In neuem Issue referenzieren
Einen Benutzer sperren