SteamKit
                                
                                 SteamKit copied to clipboard
                                
                                    SteamKit copied to clipboard
                            
                            
                            
                        Direct OnClientDisconnected calls in connectionSetupTask
Like this: https://github.com/SteamRE/SteamKit/blob/9811319f73920ef01c7d6b8e9c1d536cd3fce086/SteamKit2/SteamKit2/Steam/CMClient.cs#L191-L197
This bypasses the normal Disconnect call which means some of the objects like connectionCancellation linger around. There's a call to Disconnect() in Connect, so there's no blocking, but if there wasn't it would just crash.
Not really sure what's a clean way to fix this up because Disconnect joins connectionSetupTask, so it would just dead lock.