Description

In Blueprint, binding a custom event to OnAssetPostImport and setting TextureGroup to UI causes the UE editor to crash. But if it sets to the other group like "World" or "Character", this crash does not occur. 

Steps to Reproduce
  1. Add Editor Utility Blueprint (Asset Action Utility)
  2. Implement the logic so that the imported texture's Texture Group is set to UI; [Image Removed]
  3. Adds this blueprint to /Script/Blutility.EditorUtilitySubsystem section in DefaultEditorPerProjectUserSettings.
  4. Import texture and confirm it causes an assertive crash.

Note: the repro project (imp_tex_sample_ue521.zip) is available. Open the project and try to import import_clash_1024x1024.png

Callstack

Assertion failed: bIsRoutingPostCompilation == false [Link Removed] [Line: 245] Registering a texture to the compile manager from inside a texture postcompilation is not supported and usually indicate that the previous async operation wasn't completed (i.e. missing call to PreEditChange) before modifying a texture property.

UnrealEditor_Engine!FTextureCompilingManager::AddTextures() [D:\build\++UE5\Sync\Engine\Source\Runtime\Engine\Private\TextureCompiler.cpp:244]
UnrealEditor_Engine!UTexture2D::CreateResource() [D:\build\++UE5\Sync\Engine\Source\Runtime\Engine\Private\Texture2D.cpp:939]
UnrealEditor_Engine!UTexture::UpdateResource() [D:\build\++UE5\Sync\Engine\Source\Runtime\Engine\Private\Texture.cpp:264]
UnrealEditor_Engine!UTexture2D::UpdateResource() [D:\build\++UE5\Sync\Engine\Source\Runtime\Engine\Private\Texture2D.cpp:717]
UnrealEditor_Engine!FTextureCompilingManager::PostCompilation() [D:\build\++UE5\Sync\Engine\Source\Runtime\Engine\Private\TextureCompiler.cpp:210]
UnrealEditor_Engine!FTextureCompilingManager::ProcessTextures() [D:\build\++UE5\Sync\Engine\Source\Runtime\Engine\Private\TextureCompiler.cpp:586]
UnrealEditor_Engine!FTextureCompilingManager::ProcessAsyncTasks() [D:\build\++UE5\Sync\Engine\Source\Runtime\Engine\Private\TextureCompiler.cpp:707]
UnrealEditor_Engine!FAssetCompilingManager::ProcessAsyncTasks() [D:\build\++UE5\Sync\Engine\Source\Runtime\Engine\Private\AssetCompilingManager.cpp:516]
UnrealEditor!FEngineLoop::Tick() [D:\build\++UE5\Sync\Engine\Source\Runtime\Launch\Private\LaunchEngineLoop.cpp:5854]
UnrealEditor!GuardedMain() [D:\build\++UE5\Sync\Engine\Source\Runtime\Launch\Private\Launch.cpp:188]
UnrealEditor!GuardedMainWrapper() [D:\build\++UE5\Sync\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:107]
UnrealEditor!LaunchWindowsStartup() [D:\build\++UE5\Sync\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:244]
UnrealEditor!WinMain() [D:\build\++UE5\Sync\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:284]
UnrealEditor!__scrt_common_main_seh() [D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288]
kernel32
ntdll

Have Comments or More Details?

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

0
Login to Vote

Cannot Reproduce
ComponentUE - Texture
Affects Versions5.2.15.3.2
Target Fix5.4
CreatedNov 28, 2023
ResolvedDec 7, 2023
UpdatedDec 7, 2023