Attempting to call a blueprint event on a CDO object causes the editor to crash.
Regression:
Yes- Repro steps did not crash editor in binary 4.15.3 (CL 3450819)
UCLASS(Blueprintable) class UMyBlueprintObject : public UObject { GENERATED_BODY() public: UMyBlueprintObject() {}; UFUNCTION(BlueprintImplementableEvent, Category = "Foo") void Bar(UObject* SomeObject) const; };
virtual void BeginPlay() override;
UPROPERTY(EditAnywhere, Category = "Foobar")
TSubclassOf<UMyBlueprintObject> DerivedBlueprintObject;
void A[ProjectName]Character::BeginPlay() { Super::BeginPlay(); if (*DerivedBlueprintObject) { DerivedBlueprintObject->GetDefaultObject<UMyBlueprintObject>()->Bar(this); } }
ContentBrowserTab1.SelectedPaths=/Game/ThirdPersonCPP[DefaultEventNodes]+Node=(TargetClass=MyBlueprintObject TargetEvent="Bar")
Result:
Editor crashes with provided callstack
Expected:
PIE session runs and print string message appears on screen
LoginId:7156c35640f86204e61b8383f45dee17 EpicAccountId:e8c7fa630b6440f69a25a2c64d6c482c Assertion failed: ContainerPtr [File:D:\Build\++UE4+Release-4.16+Compile\Sync\Engine\Source\Runtime\CoreUObject\Public\UObject/UnrealType.h] [Line: 324] UE4Editor_Core!FDebug::AssertFailed() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\core\private\misc\assertionmacros.cpp:349] UE4Editor_CoreUObject!UObject::execLetValueOnPersistentFrame() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:1788] UE4Editor_CoreUObject!UObject::ProcessInternal() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:943] UE4Editor_CoreUObject!UFunction::Invoke() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\coreuobject\private\uobject\class.cpp:4461] UE4Editor_CoreUObject!UObject::ProcessEvent() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:1313] UE4Editor_CDOCrash_5003!UMyBlueprintObject::Bar() UE4Editor_Engine!AActor::DispatchBeginPlay() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\engine\private\actor.cpp:3104] UE4Editor_Engine!AWorldSettings::NotifyBeginPlay() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\engine\private\worldsettings.cpp:187] UE4Editor_Engine!AGameStateBase::HandleBeginPlay() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\engine\private\gamestatebase.cpp:177] UE4Editor_Engine!UWorld::BeginPlay() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\engine\private\world.cpp:3443] UE4Editor_Engine!UGameInstance::StartPlayInEditorGameInstance() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\engine\private\gameinstance.cpp:338] UE4Editor_UnrealEd!UEditorEngine::CreatePIEGameInstance() [d:\build\++ue4+release-4.16+compile\sync\engine\source\editor\unrealed\private\playlevel.cpp:3427] UE4Editor_UnrealEd!UEditorEngine::PlayInEditor() [d:\build\++ue4+release-4.16+compile\sync\engine\source\editor\unrealed\private\playlevel.cpp:2515] UE4Editor_UnrealEd!UEditorEngine::StartQueuedPlayMapRequest() [d:\build\++ue4+release-4.16+compile\sync\engine\source\editor\unrealed\private\playlevel.cpp:1217] UE4Editor_UnrealEd!UEditorEngine::Tick() [d:\build\++ue4+release-4.16+compile\sync\engine\source\editor\unrealed\private\editorengine.cpp:1525] UE4Editor_UnrealEd!UUnrealEdEngine::Tick() [d:\build\++ue4+release-4.16+compile\sync\engine\source\editor\unrealed\private\unrealedengine.cpp:386] UE4Editor!FEngineLoop::Tick() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\launch\private\launchengineloop.cpp:3119] UE4Editor!GuardedMain() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\launch\private\launch.cpp:166] UE4Editor!GuardedMainWrapper() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\launch\private\windows\launchwindows.cpp:134] UE4Editor!WinMain() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\launch\private\windows\launchwindows.cpp:210] UE4Editor!__scrt_common_main_seh() [f:\dd\vctools\crt\vcstartup\src\startup\exe_common.inl:253] kernel32 ntdll
How does TextureRenderTarget2D get TArray<uint8> type data?
Why does the REMOVE method of map container remove elements have memory leaks?
UMG RichText not appear image when packaged
What is the cause of the packaging error falling back to 'GameUserSettings' in ue5?
How to delete some elements correctly when deleting an array loop?
Head over to the existing Questions & Answers thread and let us know what's up.
10 |
Component | UE - Gameplay - Blueprint |
---|---|
Affects Versions | 4.16.1 |
Target Fix | 4.16.3, 4.17 |
Created | Jun 27, 2017 |
---|---|
Resolved | Jul 7, 2017 |
Updated | Apr 27, 2018 |