mirror of
https://github.com/FreeRDP/FreeRDP.git
synced 2024-11-27 11:54:44 +08:00
libfreerdp-core: properly reset internal RDP state on reconnect
This commit is contained in:
parent
06d36c7084
commit
49975d7da5
@ -372,19 +372,9 @@ BOOL rdp_client_redirect(rdpRdp* rdp)
|
|||||||
|
|
||||||
BOOL rdp_client_reconnect(rdpRdp* rdp)
|
BOOL rdp_client_reconnect(rdpRdp* rdp)
|
||||||
{
|
{
|
||||||
transport_disconnect(rdp->transport);
|
rdp_client_disconnect(rdp);
|
||||||
|
|
||||||
mcs_free(rdp->mcs);
|
rdp_reset(rdp);
|
||||||
nego_free(rdp->nego);
|
|
||||||
license_free(rdp->license);
|
|
||||||
transport_free(rdp->transport);
|
|
||||||
|
|
||||||
rdp->transport = transport_new(rdp->settings);
|
|
||||||
rdp->license = license_new(rdp);
|
|
||||||
rdp->nego = nego_new(rdp->transport);
|
|
||||||
rdp->mcs = mcs_new(rdp->transport);
|
|
||||||
|
|
||||||
rdp->transport->layer = TRANSPORT_LAYER_TCP;
|
|
||||||
|
|
||||||
return rdp_client_connect(rdp);
|
return rdp_client_connect(rdp);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user