Skip to content

Crash on FUserManagerEOS::RefreshConnectLogin() after AuthExpiration #65

Description

@exitlights

Using 4.6.2, we're getting a crash apparently after auth expires and is attempted to renew. Here's the stack:

[2025.04.25-23.41.21:029][905]LogOutputDevice: Error: === Handled ensure: ===
[2025.04.25-23.41.21:029][905]LogOutputDevice: Error: 
[2025.04.25-23.41.21:029][905]LogOutputDevice: Error: Ensure condition failed: ReaderIndex != INDEX_NONE  [File:D:\build\++UE5\Sync\Engine\Source\Runtime\Core\Public\Misc\MTAccessDetector.h] [Line: 568] 
[2025.04.25-23.41.21:029][905]LogOutputDevice: Error: Either a race detected (908765 reader(s) on another thread(s) while acquiring write access on the current thread) or the access detector was trivially relocated:
[2025.04.25-23.41.21:029][905]LogOutputDevice: Error: Current thread 48032 callstack:
[2025.04.25-23.41.21:029][905]LogOutputDevice: Error: [Callstack] 0x00007ff7c4725f41 ProjectName.exe!FMRSWRecursiveAccessDetector::GetCurrentThreadCallstack() []
[2025.04.25-23.41.21:029][905]LogOutputDevice: Error: [Callstack] 0x00007ff7d0a343a6 ProjectName.exe!`FMRSWRecursiveAccessDetector::AcquireWriteAccess'::`5'::<lambda_2>::operator()() []
[2025.04.25-23.41.21:029][905]LogOutputDevice: Error: [Callstack] 0x00007ff7c470baba ProjectName.exe!TDelegateAccessHandlerBase<FNotThreadSafeDelegateMode>::FWriteAccessScope::FWriteAccessScope() []
[2025.04.25-23.41.21:029][905]LogOutputDevice: Error: [Callstack] 0x00007ff7c4a250d8 ProjectName.exe!TMulticastDelegate<void __cdecl(FString const & __ptr64),FDefaultDelegateUserPolicy>::Broadcast() []
[2025.04.25-23.41.21:029][905]LogOutputDevice: Error: [Callstack] 0x00007ff7cdc5af2f ProjectName.exe!FEOSVoiceChatUser::LogoutInternal() [C:\Users\danny\wkspaces\ProjectName\ProjectName\Plugins\EOSIntegrationKit\Source\EIKVoiceChat\Private\EOSVoiceChatUser.cpp:1761]
[2025.04.25-23.41.21:029][905]LogOutputDevice: Error: [Callstack] 0x00007ff7cdc5a5fa ProjectName.exe!FEOSVoiceChatUser::Logout() [C:\Users\danny\wkspaces\ProjectName\ProjectName\Plugins\EOSIntegrationKit\Source\EIKVoiceChat\Private\EOSVoiceChatUser.cpp:484]
[2025.04.25-23.41.21:029][905]LogOutputDevice: Error: [Callstack] 0x00007ff7cdc43c83 ProjectName.exe!FEOSVoiceChat::ReleaseUser() [C:\Users\danny\wkspaces\ProjectName\ProjectName\Plugins\EOSIntegrationKit\Source\EIKVoiceChat\Private\EOSVoiceChat.cpp:330]
[2025.04.25-23.41.21:029][905]LogOutputDevice: Error: [Callstack] 0x00007ff7cddc6706 ProjectName.exe!FOnlineSubsystemEOS::ReleaseVoiceChatUserInterface() [C:\Users\danny\wkspaces\ProjectName\ProjectName\Plugins\EOSIntegrationKit\Source\OnlineSubsystemEIK\Private\OnlineSubsystemEOS.cpp:757]
[2025.04.25-23.41.21:029][905]LogOutputDevice: Error: [Callstack] 0x00007ff7cde24b52 ProjectName.exe!FUserManagerEOS::RemoveLocalUser() [C:\Users\danny\wkspaces\ProjectName\ProjectName\Plugins\EOSIntegrationKit\Source\OnlineSubsystemEIK\Private\UserManagerEOS.cpp:2425]
[2025.04.25-23.41.21:029][905]LogOutputDevice: Error: [Callstack] 0x00007ff7cde19837 ProjectName.exe!FUserManagerEOS::Logout() [C:\Users\danny\wkspaces\ProjectName\ProjectName\Plugins\EOSIntegrationKit\Source\OnlineSubsystemEIK\Private\UserManagerEOS.cpp:1662]
[2025.04.25-23.41.21:029][905]LogOutputDevice: Error: [Callstack] 0x00007ff7cde1d00a ProjectName.exe!FUserManagerEOS::RefreshConnectLogin() [C:\Users\danny\wkspaces\ProjectName\ProjectName\Plugins\EOSIntegrationKit\Source\OnlineSubsystemEIK\Private\UserManagerEOS.cpp:1470]
[2025.04.25-23.41.21:029][905]LogOutputDevice: Error: [Callstack] 0x00007ff7cde0439a ProjectName.exe!TEIKGlobalCallback<void (__cdecl*)(_tagEOS_Connect_AuthExpirationCallbackInfo const *),_tagEOS_Connect_AuthExpirationCallbackInfo,FUserManagerEOS,void>::CallbackImpl() [C:\Users\danny\wkspaces\ProjectName\ProjectName\Plugins\EOSIntegrationKit\Source\EIKShared\Public\EOSSharedTypes.h:83]
[2025.04.25-23.41.21:029][905]LogOutputDevice: Error: [Callstack] 0x00007ffade760930 EOSSDK-Win64-Shipping.dll!UnknownFunction []
[2025.04.25-23.41.21:029][905]LogOutputDevice: Error: [Callstack] 0x00007ffade6fa141 EOSSDK-Win64-Shipping.dll!UnknownFunction []
[2025.04.25-23.41.21:029][905]LogOutputDevice: Error: [Callstack] 0x00007ffade6fa02f EOSSDK-Win64-Shipping.dll!UnknownFunction []
[2025.04.25-23.41.21:029][905]LogOutputDevice: Error: [Callstack] 0x00007ffade6f9b77 EOSSDK-Win64-Shipping.dll!UnknownFunction []
[2025.04.25-23.41.21:029][905]LogOutputDevice: Error: [Callstack] 0x00007ffade6f7f17 EOSSDK-Win64-Shipping.dll!UnknownFunction []
[2025.04.25-23.41.21:029][905]LogOutputDevice: Error: [Callstack] 0x00007ffade784e9a EOSSDK-Win64-Shipping.dll!UnknownFunction []
[2025.04.25-23.41.21:029][905]LogOutputDevice: Error: [Callstack] 0x00007ff7cdb89902 ProjectName.exe!FEIKSDKManager::Tick() [C:\Users\danny\wkspaces\ProjectName\ProjectName\Plugins\EOSIntegrationKit\Source\EIKShared\Private\EOSSDKManager.cpp:585]
[2025.04.25-23.41.21:029][905]LogOutputDevice: Error: [Callstack] 0x00007ff7cdb83d6d ProjectName.exe!TBaseRawMethodDelegateInstance<0,FEIKSDKManager,bool __cdecl(float),FDefaultDelegateUserPolicy>::Execute() [C:\Program Files\Epic Games\UE_5.4\Engine\Source\Runtime\Core\Public\Delegates\DelegateInstancesImpl.h:518]
[2025.04.25-23.41.21:029][905]LogOutputDevice: Error: [Callstack] 0x00007ff7c47e2ee3 ProjectName.exe!FTSTicker::Tick() []
[2025.04.25-23.41.21:029][905]LogOutputDevice: Error: [Callstack] 0x00007ff7cc12323f ProjectName.exe!FEngineLoop::Tick() []
[2025.04.25-23.41.21:029][905]LogOutputDevice: Error: [Callstack] 0x00007ff7cc13857c ProjectName.exe!GuardedMain() []
[2025.04.25-23.41.21:029][905]LogOutputDevice: Error: [Callstack] 0x00007ff7cc13864a ProjectName.exe!GuardedMainWrapper() []
[2025.04.25-23.41.21:029][905]LogOutputDevice: Error: [Callstack] 0x00007ff7cc13b215 ProjectName.exe!LaunchWindowsStartup() []
[2025.04.25-23.41.21:029][905]LogOutputDevice: Error: [Callstack] 0x00007ff7cc14b4f4 ProjectName.exe!WinMain() []
[2025.04.25-23.41.21:029][905]LogOutputDevice: Error: [Callstack] 0x00007ff7d07d858a ProjectName.exe!__scrt_common_main_seh() [D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288]
[2025.04.25-23.41.21:029][905]LogOutputDevice: Error: [Callstack] 0x00007ffb87ab7374 KERNEL32.DLL!UnknownFunction []
[2025.04.25-23.41.21:029][905]LogOutputDevice: Error: [Callstack] 0x00007ffb87bfcc91 ntdll.dll!UnknownFunction []

This occurs after running the game for a while, obviously, with a voice chat session in progress. This is also following your SIK+EIK integration guide. The only other bit of information before the stack trace is this:

[2025.04.25-23.41.20:630][905]LogOnline: Error: EOS: Failed to refresh ConnectLogin(0) failed with EOS result code (EOS_InvalidParameters)
[2025.04.25-23.41.20:630][905]LogEOSVoiceChat: ReleaseUser User=[000001CB4B67A8E0] Logging out
[2025.04.25-23.41.20:630][905]LogEOSVoiceChat: [000001CB4B67A8E0] UnbindChannelCallbacks ChannelName=[conf+-1522870885]
[2025.04.25-23.41.20:630][905]LogEOSSDK: LogEOSRTC: RTCRoom Notification 'EOS_RTC_ParticipantStatusChangedCallbackInfo' is removed. NotificationId=[51] LocalProductUserId=[000...2f9] RoomName=[conf+-1522870885]
[2025.04.25-23.41.20:630][905]LogEOSSDK: LogEOSRTC: RTCRoom Notification 'EOS_RTCAudio_ParticipantUpdatedCallbackInfo' is removed. NotificationId=[52] LocalProductUserId=[000...2f9] RoomName=[conf+-1522870885]
[2025.04.25-23.41.20:630][905]LogEOSSDK: LogEOSRTC: RTCRoom Notification 'EOS_RTCAudio_AudioBeforeSendCallbackInfo' is removed. NotificationId=[53] LocalProductUserId=[000...2f9] RoomName=[conf+-1522870885]
[2025.04.25-23.41.20:630][905]LogEOSSDK: LogEOSRTC: RTCRoom Notification 'EOS_RTCAudio_AudioBeforeRenderCallbackInfo' [Unmixed] is removed. NotificationId=[54] LocalProductUserId=[000...2f9] RoomName=[conf+-1522870885]
[2025.04.25-23.41.20:630][905]LogEOSSDK: LogEOSRTC: RTCRoom Notification 'EOS_RTCAudio_AudioInputStateCallbackInfo' is removed. NotificationId=[55] LocalProductUserId=[000...2f9] RoomName=[conf+-1522870885]
[2025.04.25-23.41.20:630][905]LogEOSVoiceChat: ReleaseUser User=[000001CB4B67A8E0] Removing```

We just upgraded to 4.8 in hopes that this was already caught and fixed along the way. Any ideas?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions