diff options
author | Nikos Mavrogiannopoulos <nmav@redhat.com> | 2016-03-07 11:50:34 +0100 |
---|---|---|
committer | Nikos Mavrogiannopoulos <nmav@redhat.com> | 2016-03-07 11:50:34 +0100 |
commit | 67777d01cd234a279fdfcf742f4c2689d41fbf98 (patch) | |
tree | ef6c8dcc07e8afbaaa18b22853a664119d321b00 /lib/system.c | |
parent | d6a82ff09e15d2e76674562d2a1ebf6301efd064 (diff) | |
download | gnutls-67777d01cd234a279fdfcf742f4c2689d41fbf98.tar.gz |
gnutls_system_recv_timeout: restore poll on EINTR
Diffstat (limited to 'lib/system.c')
-rw-r--r-- | lib/system.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/system.c b/lib/system.c index a096cea242..731d734db4 100644 --- a/lib/system.c +++ b/lib/system.c @@ -179,7 +179,9 @@ int gnutls_system_recv_timeout(gnutls_transport_ptr_t ptr, unsigned int ms) timeo = -1; else timeo = ms; - ret = poll(&pfd, 1, timeo); + do { + ret = poll(&pfd, 1, timeo); + } while(ret == -1 && errno == EINTR); #else fd_set rfds; struct timeval _tv, *tv = NULL; |