Revert "Fixed a race condition when attaching to an existing socket"

This reverts commit ef27628c6d. By
bypassing setTimeout() it creates other race conditions so this is not
the proper fix for the issue.
This commit is contained in:
Pierre Ossman
2021-04-16 13:28:47 +02:00
parent 84f102d6a9
commit ae5f3f6909
2 changed files with 2 additions and 16 deletions
+2 -11
View File
@@ -286,17 +286,8 @@ export default class RFB extends EventTargetMixin {
this._sock.on('error', e => Log.Warn("WebSocket on-error event"));
// Slight delay of the actual connection so that the caller has
// time to set up callbacks.
// This it not possible when a pre-existing socket is passed in and is just opened.
// If the caller creates this object in the open() callback of a socket and there's
// data pending doing it next tick causes a packet to be lost.
// This is particularly noticable for RTCDataChannel's where the other end creates
// the channel and the client, this end, gets notified it exists.
if (typeof urlOrChannel === 'string') {
setTimeout(this._updateConnectionState.bind(this, 'connecting'));
} else {
this._updateConnectionState('connecting');
}
// time to set up callbacks
setTimeout(this._updateConnectionState.bind(this, 'connecting'));
Log.Debug("<< RFB.constructor");