[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: emacs | Pipeline #8399 has failed for master | ee0e259e
From: |
Michael Albinus |
Subject: |
Re: emacs | Pipeline #8399 has failed for master | ee0e259e |
Date: |
Wed, 06 Jan 2021 13:15:23 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) |
Philipp Stephani <p.stephani2@gmail.com> writes:
Hi Philipp,
>> >> process-test-sentinel-wait-function-working-p which is used by
>> >> process-test-sentinel-sit-for looks racy. Just because the process
>> >> sentinel has been called is no guarantee that the process has exited
>> >> and had its process-status set correctly, perhaps it should loop on
>> >> 'process-live-p'
>> >
>> > AFAIK the only correct way to wait for a process to exit is (while
>> > (accept-process-output PROC)).
>>
>> I vaguely remember that Stefan did propose (while (accept-process-output
>> PROC 0)).
>
> I guess that would work as well, but wouldn't it result in a busy
> wait?
No. If there's no output, or the connection is closed, it shall return nil.
Well, this is also true for (while (accept-process-output PROC)), but
this could block if the process just waits for something to happen.
Sure, the process shall exit in the given test situation. But we test
*whether* it happens, and shall be prepared that it fails.
(OTOH we have wrapped now the tests with a 60 second timeout; this might
be sufficient.)
Best regards, Michael.
Re: emacs | Pipeline #8399 has failed for master | ee0e259e, Robert Pluim, 2021/01/05