This should be inside the timeout as well.  The read might hang on the process and not get all the way to the wait. Not sure how long this read call lasts but to be safe it should be timed out as well.