In some uncertain cases worker0 stops with exception; self._proc is probably None (maybe reseted) or isn't even created.
Created attachment 117198 [details] crash log
Comment on attachment 117198 [details] crash log It isn't patch, so we don't need r? and cq? :)
Guys, have you got any idea what is this bug? Unfortunately it is too hard to reproduce. :(
Looks like a design error. _reset() can clear self._proc. _check_for_crash grabs at self._proc w/o checking if it's None or if self.crashed in many places. We just need to re-work that to never be the case.
*** Bug 73299 has been marked as a duplicate of this bug. ***
(In reply to comment #4) > Looks like a design error. > > _reset() can clear self._proc. _check_for_crash grabs at self._proc w/o checking if it's None or if self.crashed in many places. We just need to re-work that to never be the case. Do you mean we should use self.poll() instead of self._proc.poll() everywhere? def poll(self): """Check to see if the underlying process is running; returns None if it still is (wrapper around subprocess.poll).""" if self._proc: return self._proc.poll() return None
Created attachment 118765 [details] proposed patch Use self.poll() instead of self._proc.poll() because it checks if self._proc is None or not.
Comment on attachment 118765 [details] proposed patch r- now, because this patch isn't up-to-date. Could you update your patch to ToT and resubmit?
Created attachment 118996 [details] proposed patch Use self.poll() instead of self._proc.poll() because it checks if self._proc is None or not.
Comment on attachment 118996 [details] proposed patch Clearing flags on attachment: 118996 Committed r102677: <http://trac.webkit.org/changeset/102677>
All reviewed patches have been landed. Closing bug.