Description

There's a bug in UAssetManager::LoadAssetList where the passed in DelegateToCall is not being called in the bShouldUseSynchronousLoad case. This can cause gameplay logic to fail when that bool is true.

It's only true by default when doing something like cooking, but games can override it to be true in other cases. The fix is to properly call the delegate

 

Steps to Reproduce
  1. Create an asset manager subclass (like RPGAssetManager) and set bShouldUseSynchronousLoad to true
  2. Call LoadAssetList (or any related function like PreloadPrimaryAssets) and pass in a StreamableDelegate
  3. The passed in streamable delegate will not get called

Have Comments or More Details?

There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-64770 in the post.

0
Login to Vote

Fixed
ComponentUE - Gameplay
Affects Versions4.204.21
Target Fix4.21
Fix Commit4438237
Main Commit4450599
Release Commit4438237
CreatedOct 3, 2018
ResolvedOct 8, 2018
UpdatedOct 11, 2018