4.12 Preview 4, crash when attempting to compile blueprint

Compiler seems to be crashing with a null pointer (C5 error). Here’s the stack.

MachineId
EpicAccountId:

Access violation - code c0000005 (first/second chance not available)

UE4Editor_CoreUObject!UObjectBaseUtility::GetOutermost() [d:\build++ue4+release-4.12+compile\sync\engine\source\runtime\coreuobject\private\uobject\uobjectbaseutility.cpp:121]
UE4Editor_Engine!FArchiveReplaceOrClearExternalReferences::operator<<() [d:\build++ue4+release-4.12+compile\sync\engine\source\runtime\coreuobject\public\serialization\archiveuobject.h:1228]
UE4Editor_CoreUObject!UObjectProperty::SerializeItem() [d:\build++ue4+release-4.12+compile\sync\engine\source\runtime\coreuobject\private\uobject\propertyobject.cpp:34]
UE4Editor_CoreUObject!UStruct::SerializeBin() [d:\build++ue4+release-4.12+compile\sync\engine\source\runtime\coreuobject\private\uobject\class.cpp:795]
UE4Editor_CoreUObject!UScriptStruct::SerializeItem() [d:\build++ue4+release-4.12+compile\sync\engine\source\runtime\coreuobject\private\uobject\class.cpp:2845]
UE4Editor_CoreUObject!UStructProperty::SerializeItem() [d:\build++ue4+release-4.12+compile\sync\engine\source\runtime\coreuobject\private\uobject\propertystruct.cpp:113]
UE4Editor_CoreUObject!UArrayProperty::SerializeItem() [d:\build++ue4+release-4.12+compile\sync\engine\source\runtime\coreuobject\private\uobject\propertyarray.cpp:166]
UE4Editor_CoreUObject!UStruct::SerializeBin() [d:\build++ue4+release-4.12+compile\sync\engine\source\runtime\coreuobject\private\uobject\class.cpp:795]
UE4Editor_CoreUObject!UScriptStruct::SerializeItem() [d:\build++ue4+release-4.12+compile\sync\engine\source\runtime\coreuobject\private\uobject\class.cpp:2845]
UE4Editor_CoreUObject!UStructProperty::SerializeItem() [d:\build++ue4+release-4.12+compile\sync\engine\source\runtime\coreuobject\private\uobject\propertystruct.cpp:113]
UE4Editor_CoreUObject!UArrayProperty::SerializeItem() [d:\build++ue4+release-4.12+compile\sync\engine\source\runtime\coreuobject\private\uobject\propertyarray.cpp:166]
UE4Editor_CoreUObject!UStruct::SerializeBin() [d:\build++ue4+release-4.12+compile\sync\engine\source\runtime\coreuobject\private\uobject\class.cpp:795]
UE4Editor_CoreUObject!UObject::SerializeScriptProperties() [d:\build++ue4+release-4.12+compile\sync\engine\source\runtime\coreuobject\private\uobject\obj.cpp:1029]
UE4Editor_CoreUObject!UObject::Serialize() [d:\build++ue4+release-4.12+compile\sync\engine\source\runtime\coreuobject\private\uobject\obj.cpp:956]
UE4Editor_CoreUObject!FArchiveReplaceObjectRefBase::SerializeObject() [d:\build++ue4+release-4.12+compile\sync\engine\source\runtime\coreuobject\private\serialization\archiveuobject.cpp:198]
UE4Editor_Engine!FArchiveReplaceObjectRef::SerializeSearchObject() [d:\build++ue4+release-4.12+compile\sync\engine\source\runtime\coreuobject\public\serialization\archiveuobject.h:1102]
UE4Editor_Engine!UEngine::CopyPropertiesForUnrelatedObjects() [d:\build++ue4+release-4.12+compile\sync\engine\source\runtime\engine\private\unrealengine.cpp:11092]
UE4Editor_UnrealEd!FBlueprintCompileReinstancer::ReplaceInstancesOfClass_Inner() [d:\build++ue4+release-4.12+compile\sync\engine\source\editor\unrealed\private\kismet2\kismetreinstanceutilities.cpp:1418]
UE4Editor_UnrealEd!FBlueprintCompileReinstancer::ReplaceInstancesOfClass() [d:\build++ue4+release-4.12+compile\sync\engine\source\editor\unrealed\private\kismet2\kismetreinstanceutilities.cpp:1242]
UE4Editor_UnrealEd!FBlueprintCompileReinstancer::ReinstanceInner() [d:\build++ue4+release-4.12+compile\sync\engine\source\editor\unrealed\private\kismet2\kismetreinstanceutilities.cpp:573]
UE4Editor_UnrealEd!FBlueprintCompileReinstancer::ReinstanceObjects() [d:\build++ue4+release-4.12+compile\sync\engine\source\editor\unrealed\private\kismet2\kismetreinstanceutilities.cpp:698]
UE4Editor_UnrealEd!FKismetEditorUtilities::CompileBlueprint() [d:\build++ue4+release-4.12+compile\sync\engine\source\editor\unrealed\private\kismet2\kismet2.cpp:797]
UE4Editor_Kismet!FBlueprintEditor::Compile() [d:\build++ue4+release-4.12+compile\sync\engine\source\editor\kismet\private\blueprinteditor.cpp:3184]
UE4Editor_Kismet!TBaseSPMethodDelegateInstance<0,FBlueprintEditor,0,TTypeWrapper __cdecl(void)>::Execute() [d:\build++ue4+release-4.12+compile\sync\engine\source\runtime\core\public\delegates\delegateinstancesimpl_variadics.inl:321]
UE4Editor_Kismet!TBaseSPMethodDelegateInstance<0,FBlueprintEditor,0,void __cdecl(void)>::ExecuteIfSafe() [d:\build++ue4+release-4.12+compile\sync\engine\source\runtime\core\public\delegates\delegateinstancesimpl_variadics.inl:427]
UE4Editor_Slate!FUICommandList::ExecuteAction() [d:\build++ue4+release-4.12+compile\sync\engine\source\runtime\slate\private\framework\commands\uicommandlist.cpp:87]
UE4Editor_Slate!SToolBarButtonBlock::OnClicked() [d:\build++ue4+release-4.12+compile\sync\engine\source\runtime\slate\private\framework\multibox\stoolbarbuttonblock.cpp:300]
UE4Editor_Slate!TMemberFunctionCaller::operator()<>() [d:\build++ue4+release-4.12+compile\sync\engine\source\runtime\core\public\delegates\delegateinstanceinterface_variadics.h:161]
UE4Editor_Slate!TTupleImpl >::ApplyAfter_ExplicitReturnType >() [d:\build++ue4+release-4.12+compile\sync\engine\source\runtime\core\public\delegates\tuple.h:128]
UE4Editor_Slate!TBaseSPMethodDelegateInstance<0,SToolBarButtonBlock,0,FReply __cdecl(void)>::Execute() [d:\build++ue4+release-4.12+compile\sync\engine\source\runtime\core\public\delegates\delegateinstancesimpl_variadics.inl:321]
UE4Editor_Slate!TBaseDelegate::Execute() [d:\build++ue4+release-4.12+compile\sync\engine\source\runtime\core\public\delegates\delegatesignatureimpl_variadics.inl:521]
UE4Editor_Slate!SButton::OnMouseButtonUp() [d:\build++ue4+release-4.12+compile\sync\engine\source\runtime\slate\private\widgets\input\sbutton.cpp:275]
UE4Editor_Slate!::operator()() [d:\build++ue4+release-4.12+compile\sync\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:4598]
UE4Editor_Slate!FEventRouter::Route >() [d:\build++ue4+release-4.12+compile\sync\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:215]
UE4Editor_Slate!FSlateApplication::RoutePointerUpEvent() [d:\build++ue4+release-4.12+compile\sync\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:4587]
UE4Editor_Slate!FSlateApplication::ProcessMouseButtonUpEvent() [d:\build++ue4+release-4.12+compile\sync\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:5041]
UE4Editor_Slate!FSlateApplication::OnMouseUp() [d:\build++ue4+release-4.12+compile\sync\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:5021]
UE4Editor_Core!FWindowsApplication::ProcessDeferredMessage() [d:\build++ue4+release-4.12+compile\sync\engine\source\runtime\core\private\windows\windowsapplication.cpp:1512]
UE4Editor_Core!FWindowsApplication::DeferMessage() [d:\build++ue4+release-4.12+compile\sync\engine\source\runtime\core\private\windows\windowsapplication.cpp:1852]
UE4Editor_Core!FWindowsApplication::ProcessMessage() [d:\build++ue4+release-4.12+compile\sync\engine\source\runtime\core\private\windows\windowsapplication.cpp:742]
UE4Editor_Core!FWindowsApplication::AppWndProc() [d:\build++ue4+release-4.12+compile\sync\engine\source\runtime\core\private\windows\windowsapplication.cpp:664]
user32
user32
UE4Editor_Core!FWindowsPlatformMisc::PumpMessages() [d:\build++ue4+release-4.12+compile\sync\engine\source\runtime\core\private\windows\windowsplatformmisc.cpp:903]
UE4Editor!FEngineLoop::Tick() [d:\build++ue4+release-4.12+compile\sync\engine\source\runtime\launch\private\launchengineloop.cpp:2728]
UE4Editor!GuardedMain() [d:\build++ue4+release-4.12+compile\sync\engine\source\runtime\launch\private\launch.cpp:148]
UE4Editor!GuardedMainWrapper() [d:\build++ue4+release-4.12+compile\sync\engine\source\runtime\launch\private\windows\launchwindows.cpp:126]
UE4Editor!WinMain() [d:\build++ue4+release-4.12+compile\sync\engine\source\runtime\launch\private\windows\launchwindows.cpp:200]
UE4Editor!__scrt_common_main_seh() [f:\dd\vctools\crt\vcstartup\src\startup\exe_common.inl:264]
kernel32
ntdll

Although it may be outside of the compiler, as we can see the serialization call in the stack. The blueprint has compiled to some point prior because, when opening it, the blueprint editor is showing that it is “good to go”, the wonderful green check button. But if clicking the compile button again (no changes to the blueprint), this is when it blows up.

.

Hello ,

This question and another of yours showed up in moderation this morning, I’m assuming due to it catching the long log and assuming it to be spam. They seem like similar posts but appear to have different callstacks. Is this a duplicate of your other question here or is it separate? I just want to make sure we’re not splitting up attention for no reason.

Thanks!

Hello !

They are all seperate but all related. I think it’s anytime that Preview 4, attempts to save/serialize, something that doesn’t exist (or at least this is the kickoff point for the error). This other crash that I reported here

Is also related I think, and is where I answered in more length. I realized what might possibly be ocurring after I filed the 4 bug reports. It does show to me though (after you read what I wrote in the other post), that there is something that has slipped into the garbage collector causing an issue, or that’s my feeling at this time.

Unfortunately i’ve not had the time, to go through this with the debugger, to give a better analysis.

.

Thank you for the clarification. I’ll treat them as separate posts so we can get them entered separately, even if they end up being related.

The first thing I want to ask is, is this reproducible? If so, is it with any blueprint you’re using or only a particular one? If it is a particular one, could you explain what kind of blueprint it is/ what it contains / what changes have been made that could’ve caused this to begin occurring, if any at all other than converting the project?

,

yes totally reproducible, at will. All that was required was for to see that “Deco Collections” (i.e. arrays of static meshes, that the product saves to disk as a text file), were present, then attempt to load the “Collection”, where by it “attempts” to go ahead and load the Static mesh (or asset if you will), and fails silently if it’s not available.

I know that my code (C++ plugin at this point), is keeping a pointer to the Structure that the “Collection” is constructed in. The reason I keep the structure(s) around, is so that the user, can keep all the information (there’s more than just a the name of the asset, location, rotation, etc) they have previously entered about how to deal with the static mesh, and allow them to either update the static mesh.

I have not changed this code in about a month. I will take a look more in depth at it tonight, when I’m tired, and get back with you on this. See if I can’t get some time in with the debugger, to help pin this down.

I really don’t use any other blueprints, besides those in the product (and yes it’s that powerful, the Spline component is amazing when you consider how much it can actually do). So to my knowledge, what I have reported is directly related to my product.

.

Have you been able to pin this down at all in the past few days? It would take quite a bit more effort for me to try to track this down as I’m unfamiliar with your plugin’s structure so I would be interested to see what you’ve been able to find first.

,

My apologies, have been fighting with UE4 trying to get some static mesh components created, and there is something going on with the mobility switching around, as well as the parent/child relationship of the AttachTo call, when a Blueprint is rerunning the construction script (i.e. dragging the blueprint around in the level).

So I’ve not had time to look at this, currently downloading V 12, Preview 5, hopefully will get some time.

.

It’s no problem. Please feel free to take your time, as I know how priority of issues works all too well. Whenever you’re ready, just let me know and we can continue looking into this.

,

As preview 5 was just released today, what is the schedule for going “golden” and releasing V12, as a stable release?

.

Ok, very good then, as I will presume it’s not going to happen tomorrow! lol

.

Unfortunately until that is publicly announced, I can’t make any assumptions about when it would be released, as it isn’t even really set in stone until that point.

Hello ,

As 4.12 has now released and I’m sure you’re busy with other things at the moment, I’m going to leave this dummy answer here to this post as resolved in the meantime for tracking reasons. Whenever you have time to look into this issue further, please let me know and we can continue.