From c08dfd48ff1f179e3264c82db9355c188f0678d2 Mon Sep 17 00:00:00 2001 From: "abitha.s" Date: Tue, 27 Jun 2017 19:20:58 +0530 Subject: [PATCH] [IOT-2414]Segment faults in RemoteSceneList. Access to pointers are addressed by adding checks to ensure Segmentation fault errors Change-Id: I024455adbf7d9f6fd887059a7361557e4907598d Signed-off-by: abitha.s Reviewed-on: https://gerrit.iotivity.org/gerrit/21047 Tested-by: jenkins-iotivity Reviewed-by: Uze Choi --- service/scene-manager/src/RemoteSceneList.cpp | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/service/scene-manager/src/RemoteSceneList.cpp b/service/scene-manager/src/RemoteSceneList.cpp index f9103e3..a226d6b 100755 --- a/service/scene-manager/src/RemoteSceneList.cpp +++ b/service/scene-manager/src/RemoteSceneList.cpp @@ -83,7 +83,14 @@ namespace OIC std::placeholders::_1, std::placeholders::_2, std::placeholders::_3, std::placeholders::_4, std::move(clientCB)); - m_requestor->requestSceneCollectionCreation("", internalCB); + if(nullptr != m_requestor) + { + m_requestor->requestSceneCollectionCreation("", internalCB); + } + else + { + throw RCSInvalidParameterException{ "addNewSceneCollection : m_requestor is NULL" }; + } } std::vector< RemoteSceneCollection::Ptr > @@ -104,7 +111,14 @@ namespace OIC = std::bind(&RemoteSceneList::onNameSet, this, std::placeholders::_1, name, std::move(clientCB)); - m_requestor->requestSetName(name, internalCB); + if(nullptr != m_requestor) + { + m_requestor->requestSetName(name, internalCB); + } + else + { + throw RCSInvalidParameterException{ "setName : m_requestor is NULL" }; + } } std::string RemoteSceneList::getName() const @@ -278,4 +292,4 @@ namespace OIC } } -} \ No newline at end of file +} -- 2.7.4