Enable EventBase switching for AsyncSocket even if it has registered events
authorFuat Geleri <geleri@fb.com>
Wed, 22 Nov 2017 22:20:42 +0000 (14:20 -0800)
committerFacebook Github Bot <facebook-github-bot@users.noreply.github.com>
Wed, 22 Nov 2017 22:27:03 +0000 (14:27 -0800)
commit6612bf09e56e819cb76efd0956fdca3dd12ec514
tree9dbabff247f2e001d2e1bac33798b43f25d1792b
parent277bd447ad955b546ab248aa170004d1e3e9cd70
Enable EventBase switching for AsyncSocket even if it has registered events

Summary:
AsyncSocket will return isDetachable() -> false if there is a read callback set.
So,
 - ignore event registration status
 - unregister the events when detaching and
 - register them back when attaching again.

Reviewed By: afrind, eduardo-elizondo

Differential Revision: D6331787

fbshipit-source-id: fca4e6101f2d5666edbafa09116aa50f34cb084d
folly/io/async/AsyncSocket.cpp
folly/io/async/test/AsyncSocketTest2.cpp