diff --git a/libfreerdp/core/connection.c b/libfreerdp/core/connection.c index 5047aadfe..286643e10 100644 --- a/libfreerdp/core/connection.c +++ b/libfreerdp/core/connection.c @@ -312,8 +312,6 @@ BOOL rdp_client_disconnect(rdpRdp* rdp) { BOOL status; - ResetEvent(rdp->context->abortEvent); - if (rdp->settingsCopy) { freerdp_settings_free(rdp->settingsCopy); diff --git a/libfreerdp/core/freerdp.c b/libfreerdp/core/freerdp.c index 91eae992d..07bb43736 100644 --- a/libfreerdp/core/freerdp.c +++ b/libfreerdp/core/freerdp.c @@ -383,6 +383,7 @@ BOOL freerdp_reconnect(freerdp* instance) BOOL status; rdpRdp* rdp = instance->context->rdp; + ResetEvent(instance->context->abortEvent); status = rdp_client_reconnect(rdp); return status; diff --git a/libfreerdp/core/rdp.c b/libfreerdp/core/rdp.c index 2675a22f5..c3488f4f5 100644 --- a/libfreerdp/core/rdp.c +++ b/libfreerdp/core/rdp.c @@ -340,10 +340,7 @@ BOOL rdp_read_header(rdpRdp* rdp, wStream* s, UINT16* length, UINT16* channelId) return FALSE; if (!rdp->instance) - { - freerdp_abort_connect(rdp->instance); return FALSE; - } context = rdp->instance->context;