fpwong / BlueprintAssistWiki

47 stars 2 forks source link

Ensure condition failed: !bGraphDataInvalid [/Engine/Source/Editor/GraphEditor/Private/SGraphPin.cpp] [Line: 821] #65

Open fpwong opened 2 years ago

fpwong commented 2 years ago

User reported bug when hitting assert check for SGraphPin:

Ensure condition failed: !bGraphDataInvalid [File:C:/Build/++UE4/Sync/Engine/Source/Editor/GraphEditor/Private/SGraphPin.cpp] [Line: 821]

The Graph Pin Object has been invalidate. Someone is keeping a hard ref on the SGraphPin. See InvalidateGraphData for more info

Stack: 

GraphEditor.dll!DispatchCheckVerify<bool,<lambda_*> >() [*\AssertionMacros.h:164]

.dll!SGraphNode::FindWidgetForPin() [*\SGraphNode.cpp:1287]

BlueprintAssist.dll!FBAUtils::GetGraphPin() [*\BlueprintAssistUtils.cpp:1553]

BlueprintAssist.dll!<lambda_*>::operator()() [*\BlueprintAssistGraphHandler.cpp:231]

BlueprintAssist.dll!TArray<UEdGraphPin *,TSizedDefaultAllocator<32> >::RemoveAll<<lambda_*> >() [*\Array.h:2238]

BlueprintAssist.dll!FBAGraphHandler::OnSelectionChanged() [*\BlueprintAssistGraphHandler.cpp:240]
fpwong commented 2 years ago

If you do encounter this issue, please let me know where you encountered it and on what type of graph and node. For example:

Also make sure you are on plugin version 3.2.8 or later

sinbad commented 1 year ago

I'm hitting this relatively regularly right now. UE 5.1.1 (line 905 now), BPAssist version 4.1.5

I have auto-formatting off and it occurs when I hit "F" to reformat. If I undo the formatting and reformat it doesn't reoccur. Seems to be related to having recently deleted some other nodes in the event graph before reformatting the updated graph.

fpwong commented 1 year ago

I'm hitting this relatively regularly right now. UE 5.1.1 (line 905 now), BPAssist version 4.1.5

  • Blueprint graph
  • Reformatting an event node

I have auto-formatting off and it occurs when I hit "F" to reformat. If I undo the formatting and reformat it doesn't reoccur. Seems to be related to having recently deleted some other nodes in the event graph before reformatting the updated graph.

I have also been experiencing this ensure very frequently in 5.1.1 but it is with a different stack trace. It happens when I disconnect a pin by holding CTRL + LMB. The thing about this ensure is that it will only trigger once per debugging session, so if you continue the program it will not trigger again until you restart the editor (which is why you will not be able to trigger it from formatting and undo reformatting).

I made a pull request to fix this CTRL + LMB issue: https://github.com/EpicGames/UnrealEngine/pull/10182

And another pull request which I believe is causing the Blueprint Assist case: https://github.com/EpicGames/UnrealEngine/pull/10174

If you can reliably trigger this from formatting please let me know exactly which nodes.