Description

Based on CrashVisualizer data, crashes of this nature are the 4th most common in the 4.15.1 release. This crash may be expected due to the clear messaging that the system is out-of-memory, but this ticket is being surfaced for review.

There is no one single callstack for this crash; there are hundreds of callstacks with slight differences, all leading to different Buggs in our CrashReporter.

User descriptions

  • Trying to import PNG texture with 16530x8265 pixels.
  • Attempted to import cubemap .dds that was larger than the max size.
Steps to Reproduce

After investigating several callstack with FTextureCompressorModule in the crash reporter (Release 4.20), the OOM allocs are legit and are often allocating 1073741824, which is what you get from importing a 8K x 8K, using 4 bytes per component.

This means that the crashes are not comming from invalid or corrupted data and so the OOM is not fixable.

Callstack

Fatal error: [Link Removed] [Line: 160] Ran out of memory allocating 18446744071718584320 bytes with alignment 0

UE4Editor_Core!FGenericPlatformMemory::OnOutOfMemory() [genericplatformmemory.cpp:161]
UE4Editor_Core!FMallocTBB::Realloc() [malloctbb.cpp:102]
UE4Editor_ImageCore!TArray<unsigned char,FDefaultAllocator>::ResizeTo() [array.h:2270]
UE4Editor_ImageCore!InitImageStorage() [imagecore.cpp:22]
UE4Editor_ImageCore!FImage::CopyTo() [imagecore.cpp:262]
UE4Editor_TextureCompressor!FTextureCompressorModule::BuildTextureMips() [texturecompressormodule.cpp:2088]
UE4Editor_TextureCompressor!FTextureCompressorModule::BuildTexture() [texturecompressormodule.cpp:1822]
UE4Editor_Engine!FTextureCacheDerivedDataWorker::BuildTexture() [texturederiveddata.cpp:780]
UE4Editor_Engine!FTexturePlatformData::Cache() [texturederiveddata.cpp:1020]
UE4Editor_Engine!UTexture::CachePlatformData() [texturederiveddata.cpp:1513]
UE4Editor_Engine!UTexture2D::UpdateResource() [texture2d.cpp:432]
UE4Editor_Engine!UTexture::PostEditChangeProperty() [texture.cpp:208]
UE4Editor_CoreUObject!UObject::PostEditChange() [obj.cpp:318]
UE4Editor_UnrealEd!UTextureFactory::FactoryCreateBinary() [editorfactories.cpp:3727]
UE4Editor_UnrealEd!UFactory::FactoryCreateBinary() [factory.h:290]
UE4Editor_UnrealEd!UFactory::FactoryCreateFile() [factory.cpp:87]
UE4Editor_UnrealEd!UFactory::ImportObject() [factory.cpp:162]
UE4Editor_AssetTools!FAssetTools::ImportAssetsInternal() [assettools.cpp:1461]
UE4Editor_AssetTools!FAssetTools::ImportAssets() [assettools.cpp:708]
UE4Editor_AssetTools!FAssetTools::ImportAssets() [assettools.cpp:641]
UE4Editor_ContentBrowser!SContentBrowser::ImportAsset() [scontentbrowser.cpp:836]
UE4Editor_ContentBrowser!SContentBrowser::HandleImportClicked() [scontentbrowser.cpp:827]
UE4Editor_ContentBrowser!TMemberFunctionCaller<SContentBrowser,FReply() [delegateinstanceinterface.h:165]
UE4Editor_ContentBrowser!TTupleImpl<TIntegerSequence<unsigned int> >::ApplyAfter<TMemberFunctionCaller<SContentBrowser,FReply() [tuple.h:134]
UE4Editor_ContentBrowser!TBaseSPMethodDelegateInstance<0,SContentBrowser,0,FReply __cdecl() [delegateinstancesimpl.h:327]
UE4Editor_Slate!TBaseDelegate<FReply>::Execute() [delegatesignatureimpl.inl:537]
UE4Editor_Slate!SButton::OnMouseButtonUp() [sbutton.cpp:278]
UE4Editor_Slate!<lambda_8d0e9a1da76abd0a756a3a9d775f5ed1>::operator() [slateapplication.cpp:5075]
UE4Editor_Slate!FEventRouter::Route<FReply,FEventRouter::FToLeafmostPolicy,FPointerEvent,<lambda_8d0e9a1da76abd0a756a3a9d775f5ed1> >() [slateapplication.cpp:238]
UE4Editor_Slate!FSlateApplication::RoutePointerUpEvent() [slateapplication.cpp:5064]
UE4Editor_Slate!FSlateApplication::ProcessMouseButtonUpEvent() [slateapplication.cpp:5531]
UE4Editor_Slate!FSlateApplication::OnMouseUp() [slateapplication.cpp:5508]
UE4Editor_Core!FWindowsApplication::ProcessDeferredMessage() [windowsapplication.cpp:1698]
UE4Editor_Core!FWindowsApplication::DeferMessage() [windowsapplication.cpp:2120]
UE4Editor_Core!FWindowsApplication::ProcessMessage() [windowsapplication.cpp:867]
UE4Editor_Core!FWindowsApplication::AppWndProc() [windowsapplication.cpp:714]
user32!UserCallWinProcCheckWow()
user32!DispatchMessageWorker()
UE4Editor_Core!FWindowsPlatformMisc::PumpMessages() [windowsplatformmisc.cpp:980]
UE4Editor!FEngineLoop::Tick() [launchengineloop.cpp:2977]
UE4Editor!GuardedMain() [launch.cpp:166]
UE4Editor!GuardedMainWrapper() [launchwindows.cpp:134]
UE4Editor!WinMain() [launchwindows.cpp:210]
UE4Editor!__scrt_common_main_seh() [exe_common.inl:264]
kernel32!BaseThreadInitThunk()
ntdll!RtlUserThreadStart()

Have Comments or More Details?

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

1
Login to Vote

By Design
ComponentUE - Graphics Features
Affects Versions4.154.164.184.194.204.21
Target Fix4.21
CreatedApr 20, 2017
ResolvedAug 30, 2018
UpdatedNov 12, 2018