Same here. http://devapps.diality.us:8060/cru/#LEAHI-APPLICATION-LDT-1788-1CFR-69792 This is not safe. First, check the list length, and also first get its value in a variable, test it, then use it.
Please test to see if the list is empty, the code crashes, or not. I have a feeling that if the list is empty (no role added), the find = 0 == end = 0 and then the line
_data[vIndex.row()][vRole]
will crash. Generally, do not directly try to get the value out of a function return value without first getting the function output, testing the size with the index(in your case, eRole), then getting the field at the index. So, please update as mentioned in the line above.
signalInitiatePressureStabilization() call and periodic re-stabilize will go to PRESSURE_LIMITS_STATE_STABILIZATION. When coming from this state (PRESSURE_LIMITS_STATE_WIDE), stabilization should always be the Normal length, not the Short length.
Do we not want to fix the state? I know we're going to fault mode so not really needed, but we are returning sub-mode at end of function and would be good if it was a legal state.
As we discussed, I think alarm 150 and related inlet water alarms are already set to block triggering during rinseback and post-treatment modes. So these changes are likely not needed.