# HG changeset patch # User Andrey Skvortsov # Date 1475680312 -10800 # Node ID 8e5c03798abcfe961397db7338e59b2dc746bdc9 # Parent ee1715e94136b63ff7e0e99b3ba92ee70b00e1ee fix syncronization issue during killing ProcessLoggers on IDE close diff -r ee1715e94136 -r 8e5c03798abc util/ProcessLogger.py --- a/util/ProcessLogger.py Wed Oct 05 18:01:28 2016 +0300 +++ b/util/ProcessLogger.py Wed Oct 05 18:11:52 2016 +0300 @@ -170,6 +170,7 @@ self.logger.write_warning(_("exited with status %s (pid %s)\n")%(str(ecode),str(pid))) def finish(self, pid,ecode): + # avoid running function before start is finished self.startsem.acquire() if self.timeout: self.timeout.cancel() @@ -182,7 +183,10 @@ self.finishsem.release() def kill(self,gently=True): - self.startsem.acquire() + # avoid running kill before start is finished + self.startsem.acquire() + self.startsem.release() + self.outt.killed = True self.errt.killed = True if wx.Platform == '__WXMSW__':