X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=zigbee-daemon%2Fzigbee-lib%2Fsrc%2Fdrivers%2Fzblib_driver_zcl_on_off.c;h=d2098bdcfda120bcc495c5bc253d4d56f64b69c5;hb=1d4f64611d085a9f5b1a6e72d942e86891af1ecb;hp=177346d168ce129c81d40e58fbf66bad2356a169;hpb=1548bfc873f3e72f0965a8f1856e82503ac95d7e;p=platform%2Fcore%2Fconnectivity%2Fzigbee-manager.git diff --git a/zigbee-daemon/zigbee-lib/src/drivers/zblib_driver_zcl_on_off.c b/zigbee-daemon/zigbee-lib/src/drivers/zblib_driver_zcl_on_off.c index 177346d..d2098bd 100644 --- a/zigbee-daemon/zigbee-lib/src/drivers/zblib_driver_zcl_on_off.c +++ b/zigbee-daemon/zigbee-lib/src/drivers/zblib_driver_zcl_on_off.c @@ -18,6 +18,7 @@ #include #include +#include #include #include "zblib_driver_zcl_on_off.h" @@ -97,6 +98,7 @@ ZigBeeDriver *zblib_driver_zcl_on_off_new(ZigBeePlugin *plugin, const gchar *driver_name, ZblibDriverZclOnOffOps_t *ops) { + ZigBeeService *service = NULL; ZigBeeDriver *driver = NULL; ZblibDriverZclOnOffPrivData_t *priv_data = NULL; gboolean ret; @@ -113,6 +115,19 @@ ZigBeeDriver *zblib_driver_zcl_on_off_new(ZigBeePlugin *plugin, /* Update private data */ priv_data->ops = ops; + /* Link service to driver */ + service = zblib_plugin_ref_service(plugin); + if (NULL == service) { + Z_LOGE("zblib_plugin_ref_service failed!"); + + /* Free allocated resources */ + g_free(priv_data); + g_free(driver); + + return NULL; + } + zblib_driver_link_service(driver, service); + /* Link private data to driver */ ret = zblib_driver_link_object(driver, priv_data); if (FALSE == ret) {