diff mbox

[ovs-dev,V8,09/17] python tests: Fixed OSError not iterable on Windows

Message ID 1469533783-10976-10-git-send-email-pboca@cloudbasesolutions.com
State Superseded
Headers show

Commit Message

Paul Boca July 26, 2016, 11:50 a.m. UTC
On Windows if this exception is triggered then it will raise an exception while in the
exception handler.

Signed-off-by: Paul-Daniel Boca <pboca@cloudbasesolutions.com>
---
V2: No changes
V3: No changes
V4: No changes
V5: No changes
V6: No changes
V7: No changes
V8: Added comment when using OSError on Windows
---
 python/ovs/poller.py | 7 +++++++
 1 file changed, 7 insertions(+)
diff mbox

Patch

diff --git a/python/ovs/poller.py b/python/ovs/poller.py
index 20be801..3ebaf5a 100644
--- a/python/ovs/poller.py
+++ b/python/ovs/poller.py
@@ -17,6 +17,7 @@  import ovs.timeval
 import ovs.vlog
 import select
 import socket
+import os
 
 try:
     import eventlet.patcher
@@ -168,6 +169,12 @@  class Poller(object):
             try:
                 events = self.poll.poll(self.timeout)
                 self.__log_wakeup(events)
+            except OSError as e:
+                """ On Windows, the select function from poll raises OSError
+                exception if the polled array is empty."""
+                error = e.errno
+                if error != errno.EINTR:
+                    vlog.err("poll: %s" % os.strerror(e.errno))
             except select.error as e:
                 # XXX rate-limit
                 error, msg = e