NO-JIRA: Fix for python client ValueError exception. see bz1249608
diff --git a/qpid/compat.py b/qpid/compat.py
index 12966c2..89e3787 100644
--- a/qpid/compat.py
+++ b/qpid/compat.py
@@ -105,6 +105,7 @@
return (rfds, wfds, xfds)
else:
if tuple(sys.version_info[0:2]) < (2, 4):
+ from select import error as SelectError
from select import select as old_select
def select(rlist, wlist, xlist, timeout=None):
return old_select(list(rlist), list(wlist), list(xlist), timeout)
diff --git a/qpid/selector.py b/qpid/selector.py
index d2f4c1f..719dd84 100644
--- a/qpid/selector.py
+++ b/qpid/selector.py
@@ -17,7 +17,7 @@
# under the License.
#
import atexit, time, errno, os
-from compat import select, set, selectable_waiter
+from compat import select, SelectError, set, selectable_waiter
from threading import Thread, Lock
class Acceptor:
@@ -125,9 +125,9 @@
timeout = max(0, wakeup - time.time())
rd, wr, ex = select(self.reading, self.writing, (), timeout)
break
- except Exception, (err, strerror):
+ except SelectError, e:
# Repeat the select call if we were interrupted.
- if err == errno.EINTR:
+ if e[0] == errno.EINTR:
continue
else:
raise