diff --git a/warden3/contrib/connectors/hp-labrea/labrea-idea.py b/warden3/contrib/connectors/hp-labrea/labrea-idea.py index 89ef6f170bdf7b55907ea2f01841338be054ba7b..1d383c07773c817b6173a14e172da74da981c156 100755 --- a/warden3/contrib/connectors/hp-labrea/labrea-idea.py +++ b/warden3/contrib/connectors/hp-labrea/labrea-idea.py @@ -20,6 +20,7 @@ class FileWatcher(object): def __init__(self, filename, tail=True): self.filename = filename self.open() + self.line_buffer = "" if tail and self.f: self.f.seek(0, os.SEEK_END) @@ -48,14 +49,19 @@ class FileWatcher(object): if not self.f: self.open() if not self.f: - return "" + return self.line_buffer res = self.f.readline() if not res: self._check_reopen() if not self.f: - return "" + return self.line_buffer res = self.f.readline() - return res + if not res.endswith("\n"): + self.line_buffer += res + else: + res = self.line_buffer + res + self.line_buffer = "" + return res def close(self): try: