From 132ac45010edd5ac6c2648aafd1755d76026a14b Mon Sep 17 00:00:00 2001 From: Rapptz Date: Tue, 14 Feb 2017 00:57:30 -0500 Subject: [PATCH] Ensure after is called inside the daemon thread for players. --- discord/voice_client.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/discord/voice_client.py b/discord/voice_client.py index c126f2976..757637940 100644 --- a/discord/voice_client.py +++ b/discord/voice_client.py @@ -118,9 +118,10 @@ class StreamPlayer(threading.Thread): except Exception as e: self._current_error = e self.stop() + finally: + self._call_after() - def stop(self): - self._end.set() + def _call_after(self): if self.after is not None: try: arg_count = len(inspect.signature(self.after).parameters) @@ -136,6 +137,9 @@ class StreamPlayer(threading.Thread): except: pass + def stop(self): + self._end.set() + @property def error(self): return self._current_error