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:
@ -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
|
||||
|
||||
Reference in New Issue
Block a user