diff --git a/src/iec61850/server/mms_mapping/control.c b/src/iec61850/server/mms_mapping/control.c index cca6d5f3..9838af2c 100644 --- a/src/iec61850/server/mms_mapping/control.c +++ b/src/iec61850/server/mms_mapping/control.c @@ -1469,6 +1469,8 @@ Control_writeAccessControlObject(MmsMapping* self, MmsDomain* domain, char* vari controlObject->addCauseValue = ADD_CAUSE_SELECT_FAILED; + updateControlParameters(controlObject, ctlVal, ctlNum, origin); + if (controlObject->checkHandler != NULL) { /* perform operative tests */ controlObject->isSelect = 1; @@ -1482,8 +1484,6 @@ Control_writeAccessControlObject(MmsMapping* self, MmsDomain* domain, char* vari if (checkResult == CONTROL_ACCEPTED) { selectObject(controlObject, currentTime, connection); - updateControlParameters(controlObject, ctlVal, ctlNum, origin); - indication = DATA_ACCESS_ERROR_SUCCESS; if (DEBUG_IED_SERVER)