Fix svace issue - WGID 245644, 245645 and 245646 - DEREF_OF_NULL_DYN_CAST.
Any dependency from getDependencies() could be NULL so if the dependency
is NULL then skip it.
Change-Id: I9c3fe1f4d488b3b9c538d7b505987bb2b2f157aa
Signed-off-by: Inki Dae <inki.dae@samsung.com>
_status = NodeStatus::INVALID;
// If at least one dependency is valid, bridge node is valid.
for (auto &dep : this->getDependencies()) {
- if (dynamic_cast<TaskNode *>(dep)->getStatus() == NodeStatus::VALID) {
+ TaskNode *taskNode = dynamic_cast<TaskNode *>(dep);
+
+ if (taskNode && taskNode->getStatus() == NodeStatus::VALID) {
_status = NodeStatus::VALID;
break;
}
// If at least one dependency is valid, endpoint node is valid.
for (auto &dep : this->getDependencies()) {
- if (dynamic_cast<TaskNode *>(dep)->getStatus() == NodeStatus::VALID) {
+ TaskNode *taskNode = dynamic_cast<TaskNode *>(dep);
+
+ if (taskNode && taskNode->getStatus() == NodeStatus::VALID) {
_status = NodeStatus::VALID;
break;
}
// Note: Inference node can have at max one dependency.
for (auto &dep : this->getDependencies()) {
- if (dynamic_cast<CallbackNode *>(dep)->getStatus() == NodeStatus::INVALID) {
+ CallbackNode *callbackNode = dynamic_cast<CallbackNode *>(dep);
+
+ if (callbackNode && callbackNode->getStatus() == NodeStatus::INVALID) {
_status = NodeStatus::INVALID;
return;
}