GenieClient / Genie4

.NET 6 Update of Genie
GNU General Public License v3.0
21 stars 14 forks source link

Minor Bug: Cannot access a disposed object. Object name: 'SslStream' - Exception when wrong password entered #75

Closed arc118 closed 2 years ago

arc118 commented 2 years ago

on entering the wrong password to connect ConnectToGame Cannot access a disposed object. Object name: 'SslStream'.

System.ObjectDisposedException: Cannot access a disposed object. Object name: 'SslStream'. at System.Net.Security.SslStream.g__ThrowExceptional|138_0(ExceptionDispatchInfo e) at System.Net.Security.SslStream.Write(Byte[] buffer, Int32 offset, Int32 count) at System.Net.Security.SslStream.Write(Byte[] buffer) at GenieClient.Genie.Connection.GetLoginKey(String instance, String character) in Genie4\Core\Connection.cs:line 308 at GenieClient.Genie.Game.GameSocket_EventConnected() in Genie4\Core\Game.cs:line 3050 at GenieClient.Genie.Connection.ConnectAndAuthenticate(String sHostname, Int32 iPort) in Genie4\Core\Connection.cs:line 209 at GenieClient.Genie.Game.DoConnect(String sHostName, Int32 iPort) in Genie4\Core\Game.cs:line 2540 at GenieClient.Genie.Game.Connect(String sGenieKey, String sAccountName, String sPassword, String sCharacter, String sGame) in Genie4\Core\Game.cs:line 386 at GenieClient.FormMain.ConnectToGame(String sAccountName, String sPassword, String sCharacter, String sGame, Boolean isLich) in Genie4\Forms\FormMain.cs:line 5443

mj-colonel-panic commented 2 years ago

Thank you for the details. This made it very easy to track down and fix this. Authentication Failure was closing the socket but continuing with the rest of the authentication process. This is resolved in the newest build, where it will simply return an error and abort authentication from there.

dantiadr commented 2 years ago

Fixed per @jingounchained