From: seungho Date: Wed, 20 Jul 2022 05:32:14 +0000 (+0900) Subject: Fix svace issue to nullcheck X-Git-Tag: dali_2.1.32~1^2 X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=commitdiff_plain;h=0e3a399b5aaea96205cd0bf47613d481bd2af663 Fix svace issue to nullcheck Change-Id: Iba5fd036b50a3dc1b54d8033319e38922bd788eb Signed-off-by: seungho --- diff --git a/dali-scene3d/public-api/loader/dli-loader.cpp b/dali-scene3d/public-api/loader/dli-loader.cpp index b5382e3..96555f2 100644 --- a/dali-scene3d/public-api/loader/dli-loader.cpp +++ b/dali-scene3d/public-api/loader/dli-loader.cpp @@ -407,83 +407,86 @@ void DliLoader::Impl::ParseScene(LoadParams& params) // get index of root node. auto docRoot = mParser.GetRoot(); - - // Process resources first - these are shared - if(auto environments = docRoot->GetChild("environment")) + if(docRoot) { - ParseEnvironments(environments, output.mResources); // NOTE: must precede parsing of materials - } + // Process resources first - these are shared + if(auto environments = docRoot->GetChild("environment")) + { + ParseEnvironments(environments, output.mResources); // NOTE: must precede parsing of materials + } - if(auto meshes = docRoot->GetChild("meshes")) - { - ParseMeshes(meshes, output.mResources); - } + if(auto meshes = docRoot->GetChild("meshes")) + { + ParseMeshes(meshes, output.mResources); + } - if(auto shaders = docRoot->GetChild("shaders")) - { - ParseShaders(shaders, output.mResources); - } + if(auto shaders = docRoot->GetChild("shaders")) + { + ParseShaders(shaders, output.mResources); + } - if(auto materials = docRoot->GetChild("materials")) - { - ParseMaterials(materials, input.mConvertColorCode, output.mResources); - } + if(auto materials = docRoot->GetChild("materials")) + { + ParseMaterials(materials, input.mConvertColorCode, output.mResources); + } - for(auto& c : input.mPreNodeCategoryProcessors) - { - if(auto node = docRoot->GetChild(c.first)) + for(auto& c : input.mPreNodeCategoryProcessors) { - Property::Array array; - ParseProperties(*node, array); - c.second(std::move(array), mOnError); + if(auto node = docRoot->GetChild(c.first)) + { + Property::Array array; + ParseProperties(*node, array); + c.second(std::move(array), mOnError); + } } - } - // Process scenes - Index iScene = 0; // default scene - ReadIndex(docRoot->GetChild("scene"), iScene); + // Process scenes + Index iScene = 0; // default scene + ReadIndex(docRoot->GetChild("scene"), iScene); - auto tnScenes = RequireChild(docRoot, "scenes"); - auto tnNodes = RequireChild(docRoot, "nodes"); - ParseSceneInternal(iScene, tnScenes, tnNodes, params); + auto tnScenes = RequireChild(docRoot, "scenes"); + auto tnNodes = RequireChild(docRoot, "nodes"); + ParseSceneInternal(iScene, tnScenes, tnNodes, params); - ParseSkeletons(docRoot->GetChild("skeletons"), output.mScene, output.mResources); + ParseSkeletons(docRoot->GetChild("skeletons"), output.mScene, output.mResources); - output.mScene.EnsureUniqueSkinningShaderInstances(output.mResources); - output.mScene.EnsureUniqueBlendShapeShaderInstances(output.mResources); + output.mScene.EnsureUniqueSkinningShaderInstances(output.mResources); + output.mScene.EnsureUniqueBlendShapeShaderInstances(output.mResources); - // Ger cameras and lights - GetCameraParameters(output.mCameraParameters); - GetLightParameters(output.mLightParameters); + // Ger cameras and lights + GetCameraParameters(output.mCameraParameters); + GetLightParameters(output.mLightParameters); - // Post-node processors and animations last - for(auto& c : input.mPostNodeCategoryProcessors) - { - if(auto node = docRoot->GetChild(c.first)) + // Post-node processors and animations last + for(auto& c : input.mPostNodeCategoryProcessors) { - Property::Array array; - ParseProperties(*node, array); - c.second(std::move(array), mOnError); + if(auto node = docRoot->GetChild(c.first)) + { + Property::Array array; + ParseProperties(*node, array); + c.second(std::move(array), mOnError); + } } - } - if(auto animations = docRoot->GetChild("animations")) - { - ParseAnimations(animations, params); - } + if(auto animations = docRoot->GetChild("animations")) + { + ParseAnimations(animations, params); + } - if(!output.mAnimationDefinitions.empty()) - { - if(auto animationGroups = docRoot->GetChild("animationGroups")) + if(!output.mAnimationDefinitions.empty()) { - ParseAnimationGroups(animationGroups, params); + if(auto animationGroups = docRoot->GetChild("animationGroups")) + { + ParseAnimationGroups(animationGroups, params); + } } } } void DliLoader::Impl::ParseSceneInternal(Index iScene, const Toolkit::TreeNode* tnScenes, const Toolkit::TreeNode* tnNodes, LoadParams& params) { - auto getSceneRootIdx = [tnScenes, tnNodes](Index iScene) { + auto getSceneRootIdx = [tnScenes, tnNodes](Index iScene) + { auto tn = GetNthChild(tnScenes, iScene); // now a "scene" object if(!tn) {