+ def catchup(self, progress=None):
+ while True:
+ more = self._f.readline()
+ if not more: return
+
+ self._progress[0] += len(more)
+ if progress is not None:
+ progress(*self._progress)
+
+ self._lbuf += more
+ if self._lbuf.endswith('\n'):
+ self.chatline(self._lbuf.rstrip())
+ self._lbuf = ''
+
+def do_track_chat_log(args, bu):