From a353005296186929efc39d1b9f1789ea069f5176 Mon Sep 17 00:00:00 2001 From: chcurran <82187351+carlitosan@users.noreply.github.com> Date: Thu, 2 Sep 2021 16:43:07 -0700 Subject: [PATCH] only track dependent assets with valid ids, as sanity check Signed-off-by: chcurran <82187351+carlitosan@users.noreply.github.com> --- .../Builder/ScriptCanvasBuilderWorker.cpp | 24 ++++++++++++------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/Gems/ScriptCanvas/Code/Builder/ScriptCanvasBuilderWorker.cpp b/Gems/ScriptCanvas/Code/Builder/ScriptCanvasBuilderWorker.cpp index beeb376380..775b280602 100644 --- a/Gems/ScriptCanvas/Code/Builder/ScriptCanvasBuilderWorker.cpp +++ b/Gems/ScriptCanvas/Code/Builder/ScriptCanvasBuilderWorker.cpp @@ -128,18 +128,26 @@ namespace ScriptCanvasBuilder if (azTypeId == azrtti_typeid>()) { const auto* subgraphAsset = reinterpret_cast*>(instancePointer); - AssetBuilderSDK::SourceFileDependency dependency; - dependency.m_sourceFileDependencyUUID = subgraphAsset->GetId().m_guid; - jobDependenciesByKey.insert({s_scriptCanvasProcessJobKey, dependency}); - this->m_processEditorAssetDependencies.push_back({subgraphAsset->GetId(), azTypeId, AZ::Data::AssetLoadBehavior::PreLoad}); + if (subgraphAsset->GetId().IsValid()) + { + AssetBuilderSDK::SourceFileDependency dependency; + dependency.m_sourceFileDependencyUUID = subgraphAsset->GetId().m_guid; + jobDependenciesByKey.insert({ s_scriptCanvasProcessJobKey, dependency }); + this->m_processEditorAssetDependencies.push_back + ( { subgraphAsset->GetId(), azTypeId, AZ::Data::AssetLoadBehavior::PreLoad }); + } } else if (azTypeId == azrtti_typeid>()) { const auto* eventAsset = reinterpret_cast*>(instancePointer); - AssetBuilderSDK::SourceFileDependency dependency; - dependency.m_sourceFileDependencyUUID = eventAsset->GetId().m_guid; - jobDependenciesByKey.insert({ScriptEvents::k_builderJobKey, dependency}); - this->m_processEditorAssetDependencies.push_back({ eventAsset->GetId(), azTypeId, AZ::Data::AssetLoadBehavior::PreLoad}); + if (eventAsset->GetId().IsValid()) + { + AssetBuilderSDK::SourceFileDependency dependency; + dependency.m_sourceFileDependencyUUID = eventAsset->GetId().m_guid; + jobDependenciesByKey.insert({ ScriptEvents::k_builderJobKey, dependency }); + this->m_processEditorAssetDependencies.push_back + ( { eventAsset->GetId(), azTypeId, AZ::Data::AssetLoadBehavior::PreLoad }); + } } // always continue, make note of the script canvas dependencies