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().
This commit is contained in:
Bram Moolenaar
2010-12-17 16:27:16 +01:00
parent 45d9d02d71
commit 540fc6fbdb
8 changed files with 76 additions and 23 deletions

View File

@ -1049,7 +1049,7 @@ mf_read(mfp, hp)
PERROR(_("E294: Seek error in swap file read"));
return FAIL;
}
if ((unsigned)vim_read(mfp->mf_fd, hp->bh_data, size) != size)
if ((unsigned)read_eintr(mfp->mf_fd, hp->bh_data, size) != size)
{
PERROR(_("E295: Read error in swap file"));
return FAIL;
@ -1168,7 +1168,7 @@ mf_write_block(mfp, hp, offset, size)
}
#endif
if ((unsigned)vim_write(mfp->mf_fd, data, size) != size)
if ((unsigned)write_eintr(mfp->mf_fd, data, size) != size)
result = FAIL;
#ifdef FEAT_CRYPT