diff options
author | Dmitriy Anisimkov <anisimko@adacore.com> | 2020-09-21 12:00:41 +0600 |
---|---|---|
committer | Pierre-Marie de Rodat <derodat@adacore.com> | 2020-10-27 05:19:28 -0400 |
commit | 79e61a6361f87a8162fe362e08d3ffeb76803606 (patch) | |
tree | 2487bd804177275660682797bb3c6dafcc62dfb5 /gcc | |
parent | 0365b9e4af29dc65c4d1634ca3444362d2ad0422 (diff) | |
download | gcc-79e61a6361f87a8162fe362e08d3ffeb76803606.zip gcc-79e61a6361f87a8162fe362e08d3ffeb76803606.tar.gz gcc-79e61a6361f87a8162fe362e08d3ffeb76803606.tar.bz2 |
[Ada] Improve EINTR error handling on "poll" system call
gcc/ada/
* libgnat/g-socpol.adb (Wait): Do not exit from loop on EINTR
error and timeout is over.
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ada/libgnat/g-socpol.adb | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/gcc/ada/libgnat/g-socpol.adb b/gcc/ada/libgnat/g-socpol.adb index ab3286c..cd82bb8 100644 --- a/gcc/ada/libgnat/g-socpol.adb +++ b/gcc/ada/libgnat/g-socpol.adb @@ -368,8 +368,7 @@ package body GNAT.Sockets.Poll is Poll_Timeout := Timeout - (Clock - Stamp); if Poll_Timeout < 0.0 then - Count := 0; - return; + Poll_Timeout := 0.0; elsif Poll_Timeout > Timeout then -- Clock moved back in time. This should not be happen when |