diff options
author | Xinchen Hui <laruence@gmail.com> | 2015-05-27 16:36:15 +0800 |
---|---|---|
committer | Xinchen Hui <laruence@gmail.com> | 2015-05-27 16:36:15 +0800 |
commit | 90df7e75e6b1ca301d053cbe6d1dee66c586ecb8 (patch) | |
tree | 6a67cd0bbfe9f85253c59d695c42c119f3978c7a /sapi/phpdbg/phpdbg_io.c | |
parent | f972e219e477fa1f4137de2de24e05c0f5c515e1 (diff) | |
parent | f68dc94aa727085040650b4c9354672f2f62ee6a (diff) | |
download | php-git-90df7e75e6b1ca301d053cbe6d1dee66c586ecb8.tar.gz |
Merge branch 'master' into merge-fastcgi
Conflicts:
sapi/fpm/fpm/fpm_main.c
Diffstat (limited to 'sapi/phpdbg/phpdbg_io.c')
-rw-r--r-- | sapi/phpdbg/phpdbg_io.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/sapi/phpdbg/phpdbg_io.c b/sapi/phpdbg/phpdbg_io.c index 1f004fbae1..47899abf66 100644 --- a/sapi/phpdbg/phpdbg_io.c +++ b/sapi/phpdbg/phpdbg_io.c @@ -178,11 +178,19 @@ PHPDBG_API int phpdbg_send_bytes(int sock, const char *ptr, int len) { PHPDBG_API int phpdbg_mixed_read(int sock, char *ptr, int len, int tmo) { + int ret; + if (PHPDBG_G(flags) & PHPDBG_IS_REMOTE) { return phpdbg_consume_bytes(sock, ptr, len, tmo); } - return read(sock, ptr, len); + ret = read(sock, ptr, len); + if (ret == -1 && errno == EINTR) { + /* Read was interrupted, retry once */ + ret = read(sock, ptr, len); + } + + return ret; } |