Added check in each example object WriteProperty handler to pass test:

9.22.2.1 Writing Non-Array Properties with an Array Index
Thank you Kamalathas!
This commit is contained in:
skarg
2012-07-09 19:49:27 +00:00
parent d43146c7e3
commit 7578b4ef06
33 changed files with 605 additions and 81 deletions
+12 -5
View File
@@ -497,12 +497,19 @@ bool Analog_Input_Write_Property(
wp_data->error_code = ERROR_CODE_VALUE_OUT_OF_RANGE;
return false;
}
object_index = Analog_Input_Instance_To_Index(wp_data->object_instance);
if (object_index < MAX_ANALOG_INPUTS)
CurrentAI = &AI_Descr[object_index];
else
/* only array properties can have array options */
if ((wp_data->object_property != PROP_EVENT_TIME_STAMPS) &&
(wp_data->array_index != BACNET_ARRAY_ALL)) {
wp_data->error_class = ERROR_CLASS_PROPERTY;
wp_data->error_code = ERROR_CODE_PROPERTY_IS_NOT_AN_ARRAY;
return false;
}
object_index = Analog_Input_Instance_To_Index(wp_data->object_instance);
if (object_index < MAX_ANALOG_INPUTS) {
CurrentAI = &AI_Descr[object_index];
} else {
return false;
}
switch ((int) wp_data->object_property) {
case PROP_PRESENT_VALUE: