{
case CHANNEL_RC_OK:
return CHANNEL_RC_OK;
+
case CHANNEL_RC_NOT_CONNECTED:
Stream_Free(s, TRUE);
return CHANNEL_RC_OK;
+
case CHANNEL_RC_BAD_CHANNEL_HANDLE:
Stream_Free(s, TRUE);
WLog_ERR(TAG, "VirtualChannelWriteEx failed with CHANNEL_RC_BAD_CHANNEL_HANDLE");
drdynvc->state = DRDYNVC_STATE_CAPABILITIES;
- if (!(drdynvc->thread = CreateThread(NULL, 0, drdynvc_virtual_channel_client_thread, (void*) drdynvc,
+ if (!(drdynvc->thread = CreateThread(NULL, 0, drdynvc_virtual_channel_client_thread,
+ (void*) drdynvc,
0, NULL)))
{
error = ERROR_INTERNAL_ERROR;
{
UINT status;
+ if (drdynvc->OpenHandle == 0)
+ return CHANNEL_RC_OK;
+
if (!drdynvc)
return CHANNEL_RC_BAD_CHANNEL_HANDLE;