diff options
| author | 2019-10-14 14:51:53 +0100 | |
|---|---|---|
| committer | 2019-10-14 14:51:53 +0100 | |
| commit | 99b4663ce7047412b6fad550cb09356929db3d70 (patch) | |
| tree | 3cd82c11a8ca211f53892030c0ba03f785c1fb5f /src/IRCBot.py | |
| parent | eat errors for failing to parse @commit (diff) | |
| signature | ||
run Control callbacks on main thread
closes #180
Diffstat (limited to 'src/IRCBot.py')
| -rw-r--r-- | src/IRCBot.py | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/src/IRCBot.py b/src/IRCBot.py index 348a2ea8..9e64ec57 100644 --- a/src/IRCBot.py +++ b/src/IRCBot.py @@ -358,7 +358,10 @@ class Bot(object): self._post_send_factory(server, lines)) self._event_queue.put(event_item) elif fd in poll_sources: - poll_sources[fd].is_writeable(fd) + def _trigger(source, fd): + print("write _trigger") + return lambda: source.is_writeable(fd) + self.trigger(_trigger(poll_sources[fd], fd)) def _read_loop(self): poll_sources = {} @@ -385,8 +388,10 @@ class Bot(object): self._rtrigger_server.recv(1024) self._rtriggered = False elif fd in poll_sources: - poll_sources[fd].is_readable(fd) - self.trigger_write() + def _trigger(source, fd): + print("read _trigger") + return lambda: source.is_readable(fd) + self.trigger(_trigger(poll_sources[fd], fd)) else: if not fd in self.servers: self._read_poll.unregister(fd) |
