Skip to content

fix for tranport fallback and multiple connection on reconnect#422

Closed
vedratna wants to merge 1 commit intosocketio:masterfrom
vedratna:master
Closed

fix for tranport fallback and multiple connection on reconnect#422
vedratna wants to merge 1 commit intosocketio:masterfrom
vedratna:master

Conversation

@vedratna
Copy link
Contributor

  1. Issue with transport fallback (reproducible on Firefox 11.0 with SquidMan on Mac Lion)
    we got some complains that socket.io doesn't connect to some proxy environment where websocket is blocked. Ideally it should fallback to xhr-polling but what happens is :
    It tries to connect through websocket, times out, fallback to xhr-polling, gets connected through xhr-polling, now gets an onerror and onclose from websocket which makes socket disconnected and so on.....
    This happens because old transport still consist the reference of socket and hence affects the actual connection.
  2. Multiple connection on reconnect
    As I mentioned above multiple transport shares the same socket reference and hence causes the multiple connection.

Fix:
Detach old transport when going to connect to new transport by changing the socket reference to 'orphan' socket (as per the current design it can't be null) and close the transport.

@wavded
Copy link

wavded commented May 17, 2012

+1 experiencing this issue as well, i'll try your patch

This pull request was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants