From: Avichal Date: Thu, 21 Feb 2019 09:49:22 +0000 (+0530) Subject: Rectifyng this poniter deletion from member function X-Git-Tag: submit/tizen/20190522.102101~2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=0a9009fc587c0c9a82ddfac101971b15f5516f40;p=platform%2Fcore%2Fsystem%2Fsensord.git Rectifyng this poniter deletion from member function ASAN TFD289 Change-Id: I8261058c690244e6a21df616c67dae5dda1117ff --- diff --git a/src/server/sensor_handler.cpp b/src/server/sensor_handler.cpp index fcfef697..b9cdfcaa 100644 --- a/src/server/sensor_handler.cpp +++ b/src/server/sensor_handler.cpp @@ -83,8 +83,10 @@ int sensor_handler::notify(const char *uri, sensor_data_t *data, int len) for (auto it = m_observers.begin(); it != m_observers.end(); ++it) (*it)->update(uri, msg); - if (msg->ref_count() == 0) - msg->unref(); + if (msg->ref_count() == 0) { + delete msg; + msg = NULL; + } set_cache(data, len); diff --git a/src/shared/channel.cpp b/src/shared/channel.cpp index 446c881d..639e9c1c 100644 --- a/src/shared/channel.cpp +++ b/src/shared/channel.cpp @@ -49,8 +49,13 @@ public: if (!m_ch->send_sync(m_msg)) return false; - if (m_msg) + if (m_msg) { m_msg->unref(); + if(m_msg->ref_count() <= 0) { + delete m_msg; + m_msg = NULL; + } + } return false; } diff --git a/src/shared/message.cpp b/src/shared/message.cpp index 799e64fe..f53dd5e0 100755 --- a/src/shared/message.cpp +++ b/src/shared/message.cpp @@ -87,7 +87,7 @@ message::message(int error) message::~message() { - if (m_msg && ref_cnt == 0) { + if (m_msg) { delete [] m_msg; m_msg = NULL; } @@ -146,12 +146,12 @@ void message::unref(void) { ref_cnt--; - if (ref_cnt > 0 || !m_msg) + /*if (ref_cnt > 0 || !m_msg) return; delete [] m_msg; m_msg = NULL; - delete this; + delete this;*/ } int message::ref_count(void)