Potential fix for rare streaming bug in Audio Clip asset dispose when streaming failed

This commit is contained in:
Wojtek Figat
2025-04-03 18:47:00 +02:00
parent 0c6f1ff9dc
commit 0cfab003ef

View File

@@ -72,6 +72,7 @@ void AudioClip::StreamingTask::OnEnd()
// Unlink // Unlink
if (_asset) if (_asset)
{ {
ScopeLock lock(_asset->Locker);
ASSERT(_asset->_streamingTask == this); ASSERT(_asset->_streamingTask == this);
_asset->_streamingTask = nullptr; _asset->_streamingTask = nullptr;
_asset = nullptr; _asset = nullptr;
@@ -292,6 +293,7 @@ Task* AudioClip::CreateStreamingTask(int32 residency)
void AudioClip::CancelStreamingTasks() void AudioClip::CancelStreamingTasks()
{ {
ScopeLock lock(Locker);
if (_streamingTask) if (_streamingTask)
{ {
_streamingTask->Cancel(); _streamingTask->Cancel();