only emit timeout event once