Problem
When I broadcast my delegate, the Game sometimes crashes.
As far as I know there is not a simple validation I can use, or is there?
Error Message
Access violation - code c0000005 (first/second chance not available)
UE4Editor_Core!TStatId::TStatId_NAME_None()
UE4Editor_CoreUObject!UObject::CallFunction() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:773]
UE4Editor_CoreUObject!UObject::ProcessContextOpcode() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:2330]
UE4Editor_CoreUObject!UObject::ProcessInternal() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:1031]
UE4Editor_CoreUObject!UObject::CallFunction() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:940]
UE4Editor_CoreUObject!UObject::ProcessInternal() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:1031]
UE4Editor_CoreUObject!UFunction::Invoke() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\class.cpp:4861]
UE4Editor_CoreUObject!UObject::ProcessEvent() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:1480]
UE4Editor_Engine!AActor::ProcessEvent() [d:\build\++ue4\sync\engine\source\runtime\engine\private\actor.cpp:713]
UE4Editor_ArchInteraction!TMulticastScriptDelegate<FWeakObjectPtr>::ProcessMulticastDelegate<UObject>() [d:\program files\epic games\ue_4.21\engine\source\runtime\core\public\uobject\scriptdelegates.h:488]
UE4Editor_ArchInteraction!UArin_Action::CallOnClickImmediately() [d:\dat\git\rgplugindev\plugins\archinteraction\source\archinteraction\private\eventsystem\action\arin_action.cpp:777]
.h
DECLARE_DYNAMIC_MULTICAST_DELEGATE_FourParams(
FArin_OnClick,
const FArin_SenderInfos&, cSenderInfos,
const FArin_PointerInfos&, cPointerInfos,
const FArin_SurfaceTrace&, cTraceInfos,
const FArin_ToggleInfos&, cToggleInfos);
/**Called when a Pointer fires ButtonDown on a Sender*/
UPROPERTY(BlueprintAssignable, Category = "Arin|Action|Events")
FArin_OnClick dOnClick;
.cpp:
void UArin_Action::CallOnClickImmediately(
const FArin_SenderInfos& cSenderInfos,
const FArin_PointerInfos& cPointerInfos,
const FArin_SurfaceTrace& cTraceInfos,
const FArin_ToggleInfos& cToggleInfos)
{
dOnClick.Broadcast(
cSenderInfos,
cPointerInfos,
cTraceInfos,
cToggleInfos);
}