Bug 1299216 - Don't care about socket not connected for sock.shutdown() call. draft
authorHenrik Skupin <mail@hskupin.info>
Wed, 21 Sep 2016 16:04:49 +0200
changeset 435301 15da6600d6e8f4201fa4540a243b689dffa5b61f
parent 435300 402d5358602f7a416d8a43fd90f860d34f275afe
child 435302 35934fe5e30763c08b0cad93c988f5f2be5401f0
push id34992
push userbmo:hskupin@gmail.com
push dateTue, 08 Nov 2016 11:06:47 +0000
bugs1299216
milestone52.0a1
Bug 1299216 - Don't care about socket not connected for sock.shutdown() call. MozReview-Commit-ID: 9DXLY66KqTg
testing/marionette/client/marionette_driver/transport.py
--- a/testing/marionette/client/marionette_driver/transport.py
+++ b/testing/marionette/client/marionette_driver/transport.py
@@ -271,14 +271,20 @@ class TcpTransport(object):
         self.last_id = self.last_id + 1
         cmd = Command(self.last_id, name, params)
         self.send(cmd)
         return self.receive()
 
     def close(self):
         """Close the socket."""
         if self.sock:
-            self.sock.shutdown(socket.SHUT_RDWR)
+            try:
+                self.sock.shutdown(socket.SHUT_RDWR)
+            except IOError as exc:
+                # Errno 57 is "socket not connected", which we don't care about here.
+                if exc.errno != 57:
+                    raise
+
             self.sock.close()
             self.sock = None
 
     def __del__(self):
         self.close()