Fix SegFault if set_value was called with None
During test of 9.5.0.rc2 it was found, that call of set_value method with None results in segfault. The origin is that the copied set_value method for DevEncoded missed check if data is NULL. It is not very obvious, but the methods' dispatcher thinks, that inline void set_value(Tango::Attribute &att, Tango::EncodedAttribute *data)
is the best matching signature for set_value(None)
call. Looks like this due to all other signatures have ref (&) as the second arg and only this one - pointer (*).
Fixed segfault and improved error messages by raising standard Python exceptions, instead of the cryptic errors we get from the Boost C++ layer.
Edited by Anton Joubert