Common UI: EXCEPTION_ACCESS_VIOLATION on project startup

I am having a problem where on of my blueprints “WBP_PauseGame” is causing my project to fail to load. I have narrowed in on the fact that this is related to my “CUI_Button” asset, which is a button that uses the CommonUI plugin. This is on Unreal Engine Version 5.4.4.

Where I am confused, is that this is ONLY impacting the PauseGame widget, despite the fact that all of my UI widgets use this button.

Currently, I am creating the widget as follows on my gamemode.
image

This issue does persist on all widgets that I try to load this way on either blueprints or in code. None of the blueprints that are not attached to the gamemode, or the player blueprint, are giving this issue. For instance, my main menu can load up a widget using the button with no problems.

Does anyone have any insight on why this could be happening? I am at a loss.

Here is what the load shows right before it crashes:

Full Error:
Unhandled Exception: EXCEPTION_ACCESS_VIOLATION reading address 0x0000000000000008

UnrealEditor_CoreUObject!FLinkerLoad::ResolveDeferredExports() [D:\build++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\Blueprint\BlueprintSupport.cpp:2248]
UnrealEditor_CoreUObject!FLinkerLoad::FinalizeBlueprint() [D:\build++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\Blueprint\BlueprintSupport.cpp:2026]
UnrealEditor_CoreUObject!FLinkerLoad::Preload() [D:\build++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\LinkerLoad.cpp:4821]
UnrealEditor_CoreUObject!FLinkerLoad::CreateExport() [D:\build++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\LinkerLoad.cpp:5613]
UnrealEditor_CoreUObject!FLinkerLoad::CreateImport() [D:\build++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\LinkerLoad.cpp:5801]
UnrealEditor_CoreUObject!FLinkerLoad::ResolveDependencyPlaceholder() [D:\build++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\Blueprint\BlueprintSupport.cpp:1769]
UnrealEditor_CoreUObject!FLinkerLoad::ResolveDeferredDependencies() [D:\build++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\Blueprint\BlueprintSupport.cpp:1595]
UnrealEditor_CoreUObject!FLinkerLoad::Preload() [D:\build++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\LinkerLoad.cpp:4821]
UnrealEditor_CoreUObject!FLinkerLoad::CreateExport() [D:\build++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\LinkerLoad.cpp:5613]
UnrealEditor_CoreUObject!FLinkerLoad::IndexToObject() [D:\build++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\LinkerLoad.cpp:5908]
UnrealEditor_CoreUObject!FLinkerLoad::CreateExport() [D:\build++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\LinkerLoad.cpp:5165]
UnrealEditor_CoreUObject!FLinkerLoad::IndexToObject() [D:\build++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\LinkerLoad.cpp:5908]
UnrealEditor_CoreUObject!FLinkerLoad::CreateExport() [D:\build++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\LinkerLoad.cpp:5165]
UnrealEditor_CoreUObject!FLinkerLoad::CreateExportAndPreload() [D:\build++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\LinkerLoad.cpp:4014]
UnrealEditor_CoreUObject!FLinkerLoad::LoadAllObjects() [D:\build++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\LinkerLoad.cpp:4243]
UnrealEditor_CoreUObject!LoadPackageInternal() [D:\build++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\UObjectGlobals.cpp:1892]
UnrealEditor_CoreUObject!FLinkerLoad::VerifyImportInner'::2’::<lambda_1>::operator()() [D:\build++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\LinkerLoad.cpp:3527]
UnrealEditor_CoreUObject!FLinkerLoad::VerifyImportInner() [D:\build++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\LinkerLoad.cpp:3662]
UnrealEditor_CoreUObject!FLinkerLoad::VerifyImport() [D:\build++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\LinkerLoad.cpp:3168]
UnrealEditor_CoreUObject!FLinkerLoad::Verify() [D:\build++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\LinkerLoad.cpp:2921]
UnrealEditor_CoreUObject!FLinkerLoad::FinalizeCreation() [D:\build++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\LinkerLoad.cpp:2723]
UnrealEditor_CoreUObject!FLinkerLoad::ProcessPackageSummary() [D:\build++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\LinkerLoad.cpp:893]
UnrealEditor_CoreUObject!FLinkerLoad::Tick() [D:\build++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\LinkerLoad.cpp:943]
UnrealEditor_CoreUObject!FLinkerLoad::CreateLinker() [D:\build++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\LinkerLoad.cpp:561]
UnrealEditor_CoreUObject!GetPackageLinker() [D:\build++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\Linker.cpp:836]
UnrealEditor_CoreUObject!LoadPackageInternal() [D:\build++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\UObjectGlobals.cpp:1777]
UnrealEditor_CoreUObject!FLinkerLoad::VerifyImportInner'::2’::<lambda_1>::operator()() [D:\build++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\LinkerLoad.cpp:3527]
UnrealEditor_CoreUObject!FLinkerLoad::VerifyImportInner() [D:\build++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\LinkerLoad.cpp:3662]
UnrealEditor_CoreUObject!FLinkerLoad::VerifyImport() [D:\build++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\LinkerLoad.cpp:3168]
UnrealEditor_CoreUObject!FLinkerLoad::VerifyImportInner() [D:\build++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\LinkerLoad.cpp:3691]
UnrealEditor_CoreUObject!FLinkerLoad::VerifyImport() [D:\build++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\LinkerLoad.cpp:3168]
UnrealEditor_CoreUObject!FLinkerLoad::Verify() [D:\build++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\LinkerLoad.cpp:2921]
UnrealEditor_CoreUObject!FLinkerLoad::FinalizeCreation() [D:\build++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\LinkerLoad.cpp:2723]
UnrealEditor_CoreUObject!FLinkerLoad::ProcessPackageSummary() [D:\build++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\LinkerLoad.cpp:893]
UnrealEditor_CoreUObject!FLinkerLoad::Tick() [D:\build++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\LinkerLoad.cpp:943]
UnrealEditor_CoreUObject!FLinkerLoad::CreateLinker() [D:\build++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\LinkerLoad.cpp:561]
UnrealEditor_CoreUObject!GetPackageLinker() [D:\build++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\Linker.cpp:836]
UnrealEditor_CoreUObject!LoadPackageInternal() [D:\build++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\UObjectGlobals.cpp:1777]
UnrealEditor_CoreUObject!LoadPackage() [D:\build++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\UObjectGlobals.cpp:2068]
UnrealEditor_CoreUObject!LoadPackage() [D:\build++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\UObjectGlobals.cpp:2044]
UnrealEditor_UnrealEd!UEditorEngine::Map_Load() [D:\build++UE5\Sync\Engine\Source\Editor\UnrealEd\Private\EditorServer.cpp:2590]
UnrealEditor_UnrealEd!UEditorEngine::HandleMapCommand() [D:\build++UE5\Sync\Engine\Source\Editor\UnrealEd\Private\EditorServer.cpp:6162]
UnrealEditor_UnrealEd!UEditorEngine::Exec_Editor() [D:\build++UE5\Sync\Engine\Source\Editor\UnrealEd\Private\EditorServer.cpp:5623]
UnrealEditor_Core!FExec::Exec() [D:\build++UE5\Sync\Engine\Source\Runtime\Core\Private\Misc\Exec.cpp:18]
UnrealEditor_Engine!UEngine::Exec() [D:\build++UE5\Sync\Engine\Source\Runtime\Engine\Private\UnrealEngine.cpp:4759]
UnrealEditor_UnrealEd!UUnrealEdEngine::Exec() [D:\build++UE5\Sync\Engine\Source\Editor\UnrealEd\Private\UnrealEdSrv.cpp:662]
UnrealEditor_UnrealEd!FEditorFileUtils::LoadMap() [D:\build++UE5\Sync\Engine\Source\Editor\UnrealEd\Private\FileHelpers.cpp:2941]
UnrealEditor_UnrealEd!FEditorFileUtils::LoadDefaultMapAtStartup() [D:\build++UE5\Sync\Engine\Source\Editor\UnrealEd\Private\FileHelpers.cpp:4971]
UnrealEditor_UnrealEd!FUnrealEdMisc::OnInit() [D:\build++UE5\Sync\Engine\Source\Editor\UnrealEd\Private\UnrealEdMisc.cpp:374]
UnrealEditor_UnrealEd!EditorInit() [D:\build++UE5\Sync\Engine\Source\Editor\UnrealEd\Private\UnrealEdGlobals.cpp:135]
UnrealEditor!GuardedMain() [D:\build++UE5\Sync\Engine\Source\Runtime\Launch\Private\Launch.cpp:158]
UnrealEditor!GuardedMainWrapper() [D:\build++UE5\Sync\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:118]
UnrealEditor!LaunchWindowsStartup() [D:\build++UE5\Sync\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:258]
UnrealEditor!WinMain() [D:\build++UE5\Sync\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:298]
UnrealEditor!__scrt_common_main_seh() [D:\a_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288]
kernel32
ntdll

Troubleshooting done:

  • Removed binaries, saved, derived cache, etc, and reloaded.
  • Attempted to copy and recreate the widget.
  • Turned off Common UI (this allows project to load), but when I reenable the plugin, the issue comes back
  • Tried loading the widget on the level blueprint. This does not cause the error, which makes me think it is a timing issue or some sort of race condition?
  • Verified my Engine version.

Please let me know if I can add anything else that could help. Thanks in advance.

I came up with a workaround that I am satisfied with, I am still not sure why the original behavior took place though. Likely a timing issue if I was to guess.

Anyway, I just had to change the code such that we no longer are creating the reference in the constructor. I opted for the tried and true method of created a UPROPERTY, and setting it to the widget I wanted in a child blueprint.

I then initialized my actual widget variable in beginplay, and no issues are found.

If anyone happens upon this and knows what caused the original behavior, I would be interested in order to continue my own knowledge