diff src/os_unix.c @ 2664:033e7b49356c v7.3.083

updated for version 7.3.083 Problem: When a read() or write() is interrupted by a signal it fails. Solution: Add read_eintr() and write_eintr().
author Bram Moolenaar <bram@vim.org>
date Fri, 17 Dec 2010 16:27:16 +0100
parents 758822790b43
children 6d80dbca8501
line wrap: on
line diff
--- a/src/os_unix.c
+++ b/src/os_unix.c
@@ -4454,7 +4454,7 @@ mch_call_shell(cmd, options)
 		    ++noread_cnt;
 		    while (RealWaitForChar(fromshell_fd, 10L, NULL))
 		    {
-			len = read(fromshell_fd, (char *)buffer
+			len = read_eintr(fromshell_fd, buffer
 # ifdef FEAT_MBYTE
 				+ buffer_off, (size_t)(BUFLEN - buffer_off)
 # else