diff options
author | Dana Powers <dana.powers@rd.io> | 2015-02-03 11:35:51 -0800 |
---|---|---|
committer | Dana Powers <dana.powers@rd.io> | 2015-02-03 11:35:51 -0800 |
commit | a21f701e1e794b21c307df4d4391f3600917bc66 (patch) | |
tree | 6b49691645ec01fcef1427f8e58ec77c332f3f00 /kafka/util.py | |
parent | f0f37445b483b413cfe1ec900d033a3c9325e6e9 (diff) | |
download | kafka-python-a21f701e1e794b21c307df4d4391f3600917bc66.tar.gz |
Fix python2.6 threading.Event bug in ReentrantTimer
Diffstat (limited to 'kafka/util.py')
-rw-r--r-- | kafka/util.py | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/kafka/util.py b/kafka/util.py index cc5c0d5..14d2b2c 100644 --- a/kafka/util.py +++ b/kafka/util.py @@ -126,7 +126,11 @@ class ReentrantTimer(object): self.active = None def _timer(self, active): - while not active.wait(self.t): + # python2.6 Event.wait() always returns None + # python2.7 and greater returns the flag value (true/false) + # we want the flag value, so add an 'or' here for python2.6 + # this is redundant for later python versions (FLAG OR FLAG == FLAG) + while not (active.wait(self.t) or active.is_set()): self.fn(*self.args, **self.kwargs) def start(self): |