fix: correct event subscription logic in GenericCommunicationMonitor and poll inclusively.

deregister client.BytesReceived and client.TextReceived events before registering preventing multiple event registrations and trigger poll independant of iSocket condition.
This commit is contained in:
Jonathan Arndt 2025-03-16 08:12:20 -07:00
parent 3d91723ab0
commit e738195a2f

View file

@ -151,17 +151,16 @@ namespace PepperDash.Essentials.Core
{ {
if (MonitorBytesReceived) if (MonitorBytesReceived)
{ {
Client.BytesReceived += Client_BytesReceived; Client.BytesReceived -= Client_BytesReceived;
Client.BytesReceived += Client_BytesReceived;
} }
else else
{ {
Client.TextReceived -= Client_TextReceived;
Client.TextReceived += Client_TextReceived; Client.TextReceived += Client_TextReceived;
} }
if (!IsSocket) BeginPolling();
{
BeginPolling();
}
} }
void socket_ConnectionChange(object sender, GenericSocketStatusChageEventArgs e) void socket_ConnectionChange(object sender, GenericSocketStatusChageEventArgs e)