Segfault in check_alarm when set_value not called.
Hello, i am experiencing a segfault when calling check_alarm
without calling set_value
explicitly.
For an example, i have an attribute defined by:
@attribute(
dtype="DevDouble",
min_alarm=16.0,
max_alarm=65.0,
)
def boardTemperature(self) -> float:
return 55.0
When i call the following in code i get a segfault:
multi_attr = self.get_device_attr()
self.push_change_event("boardTemperature", 99.0)
try:
multi_attr.check_alarm("boardTemperature") <--- This line segfaults.
except tango.DevFailed:
self.logger.error("no alarm defined")
This segfault is removed by calling attr.set_value() before checking the alarm, i.e:
multi_attr = self.get_device_attr()
self.push_change_event("boardTemperature", 99.0)
attr = multi_attr.get_attr_by_name("boardTemperature")
attr.set_value(99.0)
try:
multi_attr.check_alarm("boardTemperature")
except tango.DevFailed:
self.logger.error("no alarm defined")