X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=python%2Fovs%2Fstream.py;fp=python%2Fovs%2Fstream.py;h=c640ebf55d33ac59703059aa3f417821b636090f;hb=dcb66daea433cd93593e517c3fac3c898f2c9f70;hp=c4d243d0d61f2598bb2145a39a57c8423274ef34;hpb=4fe3445afbbcda01e426d26cdcc1c7daa5d9f823;p=openvswitch diff --git a/python/ovs/stream.py b/python/ovs/stream.py index c4d243d0..c640ebf5 100644 --- a/python/ovs/stream.py +++ b/python/ovs/stream.py @@ -161,15 +161,17 @@ class Stream(object): is complete, returns 0 if the connection was successful or a positive errno value if it failed. If the connection is still in progress, returns errno.EAGAIN.""" - last_state = -1 # Always differs from initial self.state - while self.state != last_state: - last_state = self.state - if self.state == Stream.__S_CONNECTING: - self.__scs_connecting() - elif self.state == Stream.__S_CONNECTED: - return 0 - elif self.state == Stream.__S_DISCONNECTED: - return self.error + + if self.state == Stream.__S_CONNECTING: + self.__scs_connecting() + + if self.state == Stream.__S_CONNECTING: + return errno.EAGAIN + elif self.state == Stream.__S_CONNECTED: + return 0 + else: + assert self.state == Stream.__S_DISCONNECTED + return self.error def recv(self, n): """Tries to receive up to 'n' bytes from this stream. Returns a