Why is this blueprint function not calling?

I have a widget button that when clicked fetches some values associated with the button. after the button clicked event the layer calls a function “FindLayer” that searches a Tmap using a Fname as the key. Now in code I have a GEngine->AddOnScreenDebugMessage() first line in the function, nothing blocking or prohibiting it. As you can see by the image attached I put a breakpoint on the function in blueprints to show that it is being triggered through the chain of blueprints, but, the GEngine->AddOnScreenDebugMessage() never gets called, Even though the blueprint node is part of the path, it does not call this function. It goes right over it somehow. The next function is the cast, which fails because the layer was never fetched, because the function was never actually used. During the breakpoint pause. I notice the engine will crash randomly sometimes, and when it does, it shows this line in the code

ensureMsgf(false, TEXT("Error: Invalid (but non-null) property associated with pin; cannot get variable value"));
				bErrorOnce = false;

Can you show you C++ ? the header file where this function is declared. Which params you add to UFUNCTION() ?

Also, just incase it helps with finding the solution, it should be mentioned that this was already working. I did a bunch of work yesterday and something I changed is prohibiting the function from being called - but when it is called, this process was working, so I need to figure out what is blocking this from being called.

Okay I found out more. I added a FString UPROPERTY to the actor class holding the function/ container to see if I could access and print it from the actor reference, and I wasn’t able to. Something is breaking my reference to the actor class.

The problem is the reference is dead. At another location I accidently broke it, so the function was never being called because there was no object to call it from.