fpwong / BlueprintAssistWiki

47 stars 2 forks source link

Crash when trying to format BP (widget) #148

Open tshabi8 opened 1 year ago

tshabi8 commented 1 year ago

UE 5.1.1 Plugin version: 4.1.7

Unhandled Exception: EXCEPTION_ACCESS_VIOLATION reading address 0x0000000000000000

UnrealEditor_BlueprintAssist!FBAUtils::GetPinPos() [C:\Source\UnrealEngine5.1\Engine\Plugins\Marketplace\BlueprintAssist\Source\BlueprintAssist\Private\BlueprintAssistUtils.cpp:383] UnrealEditor_BlueprintAssist!FKnotNodeTrack::GetTrackHeight() [C:\Source\UnrealEngine5.1\Engine\Plugins\Marketplace\BlueprintAssist\Source\BlueprintAssist\GraphFormatters\KnotTrack\KnotTrack.cpp:97] UnrealEditor_BlueprintAssist!FKnotTrackCreator::CreateKnotTracks() [C:\Source\UnrealEngine5.1\Engine\Plugins\Marketplace\BlueprintAssist\Source\BlueprintAssist\GraphFormatters\KnotTrack\KnotTrackCreator.cpp:184] UnrealEditor_BlueprintAssist!FKnotTrackCreator::FormatKnotNodes() [C:\Source\UnrealEngine5.1\Engine\Plugins\Marketplace\BlueprintAssist\Source\BlueprintAssist\GraphFormatters\KnotTrack\KnotTrackCreator.cpp:44] UnrealEditor_BlueprintAssist!FEdGraphFormatter::FormatNode() [C:\Source\UnrealEngine5.1\Engine\Plugins\Marketplace\BlueprintAssist\Source\BlueprintAssist\GraphFormatters\EdGraphFormatter.cpp:330] UnrealEditor_BlueprintAssist!FBAGraphHandler::FormatNodes() [C:\Source\UnrealEngine5.1\Engine\Plugins\Marketplace\BlueprintAssist\Source\BlueprintAssist\Private\BlueprintAssistGraphHandler.cpp:3110] UnrealEditor_BlueprintAssist!FBAGraphHandler::UpdateNodesRequiringFormatting() [C:\Source\UnrealEngine5.1\Engine\Plugins\Marketplace\BlueprintAssist\Source\BlueprintAssist\Private\BlueprintAssistGraphHandler.cpp:2368] UnrealEditor_BlueprintAssist!FBAGraphHandler::Tick() [C:\Source\UnrealEngine5.1\Engine\Plugins\Marketplace\BlueprintAssist\Source\BlueprintAssist\Private\BlueprintAssistGraphHandler.cpp:502] UnrealEditor_BlueprintAssist!FBATabHandler::Tick() [C:\Source\UnrealEngine5.1\Engine\Plugins\Marketplace\BlueprintAssist\Source\BlueprintAssist\Private\BlueprintAssistTabHandler.cpp:51] UnrealEditor_BlueprintAssist!FBAInputProcessor::Tick() [C:\Source\UnrealEngine5.1\Engine\Plugins\Marketplace\BlueprintAssist\Source\BlueprintAssist\Private\BlueprintAssistInputProcessor.cpp:98] UnrealEditor_Slate!FSlateApplication::FinishedInputThisFrame() [C:\Source\UnrealEngine5.1\Engine\Source\Runtime\Slate\Private\Framework\Application\SlateApplication.cpp:1387] UnrealEditor!FEngineLoop::Tick() [C:\Source\UnrealEngine5.1\Engine\Source\Runtime\Launch\Private\LaunchEngineLoop.cpp:5353] UnrealEditor!GuardedMain() [C:\Source\UnrealEngine5.1\Engine\Source\Runtime\Launch\Private\Launch.cpp:202] UnrealEditor!GuardedMainWrapper() [C:\Source\UnrealEngine5.1\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:107] UnrealEditor!LaunchWindowsStartup() [C:\Source\UnrealEngine5.1\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:244] UnrealEditor!WinMain() [C:\Source\UnrealEngine5.1\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:282] UnrealEditor!__scrt_common_main_seh() [D:\a_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288] kernel32 ntdll

The blueprint I'm trying to format is pretty mess: image

fpwong commented 12 months ago

Hi @tshabi8, I remember fixing a knot track related crash some time ago but I'm not sure if it is the same one. Could you try updating the plugin and seeing if this fixes the issue? The latest plugin version is now 4.2.4.

tshabi8 commented 8 months ago

Hi @tshabi8, I remember fixing a knot track related crash some time ago but I'm not sure if it is the same one. Could you try updating the plugin and seeing if this fixes the issue? The latest plugin version is now 4.2.4.

Tried on 4.2.10 still same crash

fpwong commented 8 months ago

Sorry about this. I'm still stumped as to how this variable is null at this point in time. However I've put in some null checks and changed one other function call which may hopefully have solved the problem. It should at least stop it crashing though.

Instead of the crash you may see an error msg in the output log, saying something about the Parent Pin being null. Please report it here if you do see this.

The formatting will look messed up too since it will instead use (0, 0) as the position, because it's trying to read a null pin location.

fpwong commented 8 months ago

This is out on the marketplace now in v4.2.11.

Hopefully this has fixed it, please let me know if you encounter this again.

tshabi8 commented 8 months ago

Just tested with 4.2.11 still crashing:

Unhandled Exception: EXCEPTION_ACCESS_VIOLATION reading address 0x0000000000000028

UnrealEditor_BlueprintAssist!FKnotNodeCreation::CreateKnotNode() [C:\Source\UnrealEngine5.1\Engine\Plugins\Marketplace\BlueprintAssist\Source\BlueprintAssist\Private\BlueprintAssistFormatters\KnotTrack.cpp:57] UnrealEditor_BlueprintAssist!FKnotTrackCreator::CreateKnotTracks() [C:\Source\UnrealEngine5.1\Engine\Plugins\Marketplace\BlueprintAssist\Source\BlueprintAssist\Private\BlueprintAssistFormatters\KnotTrackCreator.cpp:203] UnrealEditor_BlueprintAssist!FKnotTrackCreator::FormatKnotNodes() [C:\Source\UnrealEngine5.1\Engine\Plugins\Marketplace\BlueprintAssist\Source\BlueprintAssist\Private\BlueprintAssistFormatters\KnotTrackCreator.cpp:45] UnrealEditor_BlueprintAssist!FEdGraphFormatter::FormatNode() [C:\Source\UnrealEngine5.1\Engine\Plugins\Marketplace\BlueprintAssist\Source\BlueprintAssist\Private\BlueprintAssistFormatters\EdGraphFormatter.cpp:327] UnrealEditor_BlueprintAssist!FBAGraphHandler::FormatNodes() [C:\Source\UnrealEngine5.1\Engine\Plugins\Marketplace\BlueprintAssist\Source\BlueprintAssist\Private\BlueprintAssistGraphHandler.cpp:3186] UnrealEditor_BlueprintAssist!FBAGraphHandler::UpdateNodesRequiringFormatting() [C:\Source\UnrealEngine5.1\Engine\Plugins\Marketplace\BlueprintAssist\Source\BlueprintAssist\Private\BlueprintAssistGraphHandler.cpp:2456] UnrealEditor_BlueprintAssist!FBAGraphHandler::Tick() [C:\Source\UnrealEngine5.1\Engine\Plugins\Marketplace\BlueprintAssist\Source\BlueprintAssist\Private\BlueprintAssistGraphHandler.cpp:467] UnrealEditor_BlueprintAssist!FBATabHandler::Tick() [C:\Source\UnrealEngine5.1\Engine\Plugins\Marketplace\BlueprintAssist\Source\BlueprintAssist\Private\BlueprintAssistTabHandler.cpp:53] UnrealEditor_BlueprintAssist!FBAInputProcessor::Tick() [C:\Source\UnrealEngine5.1\Engine\Plugins\Marketplace\BlueprintAssist\Source\BlueprintAssist\Private\BlueprintAssistInputProcessor.cpp:100] UnrealEditor_Slate!FSlateApplication::FinishedInputThisFrame() [C:\Source\UnrealEngine5.1\Engine\Source\Runtime\Slate\Private\Framework\Application\SlateApplication.cpp:1387] UnrealEditor!FEngineLoop::Tick() [C:\Source\UnrealEngine5.1\Engine\Source\Runtime\Launch\Private\LaunchEngineLoop.cpp:5353] UnrealEditor!GuardedMain() [C:\Source\UnrealEngine5.1\Engine\Source\Runtime\Launch\Private\Launch.cpp:202] UnrealEditor!GuardedMainWrapper() [C:\Source\UnrealEngine5.1\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:107] UnrealEditor!LaunchWindowsStartup() [C:\Source\UnrealEngine5.1\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:244] UnrealEditor!WinMain() [C:\Source\UnrealEngine5.1\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:282] UnrealEditor!__scrt_common_main_seh() [D:\a_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288] kernel32 ntdll

fpwong commented 8 months ago

@tshabi8 Thankfully it is not the same stack call as last time. I have recently received another crash report relating to the knot track creator, however that was also not the same stack call as this one. Did this crash happen to occur on a material graph?

I have pushed another hotfix which should prevent this crash in v4.2.12. Although when it fails the knot track formatting will be messed up and some errors will be printed to the output log. Please let me know if you find a replicatable case for this one.