Fix crash when closing handles to asset file while any asset streaming task is active for asset from that file

This commit is contained in:
Wojciech Figat
2022-07-18 13:02:34 +02:00
parent b6652a61c6
commit 3dbff3cab7
14 changed files with 119 additions and 11 deletions

View File

@@ -760,6 +760,11 @@ void SkinnedModel::InitAsVirtual()
BinaryAsset::InitAsVirtual();
}
void SkinnedModel::CancelStreaming()
{
CancelStreamingTasks();
}
#if USE_EDITOR
void SkinnedModel::GetReferences(Array<Guid>& output) const
@@ -840,6 +845,15 @@ Task* SkinnedModel::CreateStreamingTask(int32 residency)
return result;
}
void SkinnedModel::CancelStreamingTasks()
{
if (_streamingTask)
{
_streamingTask->Cancel();
ASSERT_LOW_LAYER(_streamingTask == nullptr);
}
}
Asset::LoadResult SkinnedModel::load()
{
// Get header chunk