diff options
author | James Feist <james.feist@linux.intel.com> | 2018-11-30 11:23:44 -0800 |
---|---|---|
committer | James Feist <james.feist@linux.intel.com> | 2018-11-30 21:56:43 +0000 |
commit | f042393a658e6f2d82ae49d8e3457790257051e6 (patch) | |
tree | 82e070b1d532bccb36ff3d64abab762740428ac7 | |
parent | 90778b430290c9ec8c33fb77b03e2552d9dd6905 (diff) | |
download | sdbusplus-f042393a658e6f2d82ae49d8e3457790257051e6.tar.gz sdbusplus-f042393a658e6f2d82ae49d8e3457790257051e6.zip |
asio: Don't allow signaling uninitialized properties
Signaling a property in an non-initialized interface
causes a segfault.
Testedy-by: Verified segfault went away.
Change-Id: Ib48510e761fb69667040351056853a470c5a9a9f
Signed-off-by: James Feist <james.feist@linux.intel.com>
-rw-r--r-- | sdbusplus/asio/object_server.hpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/sdbusplus/asio/object_server.hpp b/sdbusplus/asio/object_server.hpp index eee6e2f..347d1cc 100644 --- a/sdbusplus/asio/object_server.hpp +++ b/sdbusplus/asio/object_server.hpp @@ -665,9 +665,15 @@ class dbus_interface } return true; } - void signal_property(const std::string& name) + + bool signal_property(const std::string& name) { + if (!initialized_) + { + return false; + } interface_->property_changed(name.c_str()); + return true; } std::string get_object_path(void) |