diff options
-rw-r--r-- | Alc/oss.c | 4 | ||||
-rw-r--r-- | Alc/solaris.c | 2 |
2 files changed, 3 insertions, 3 deletions
@@ -80,7 +80,7 @@ static ALuint OSSProc(ALvoid *ptr) ALCdevice *pDevice = (ALCdevice*)ptr; oss_data *data = (oss_data*)pDevice->ExtraData; ALint frameSize; - int wrote; + ssize_t wrote; frameSize = aluChannelsFromFormat(pDevice->Format) * aluBytesFromFormat(pDevice->Format); @@ -96,7 +96,7 @@ static ALuint OSSProc(ALvoid *ptr) wrote = write(data->fd, WritePtr, len); if(wrote < 0) { - if(errno != EAGAIN && errno != EWOULDBLOCK) + if(errno != EAGAIN && errno != EWOULDBLOCK && errno != EINTR) { AL_PRINT("write failed: %s\n", strerror(errno)); aluHandleDisconnect(pDevice); diff --git a/Alc/solaris.c b/Alc/solaris.c index 988a91f0..695f8f86 100644 --- a/Alc/solaris.c +++ b/Alc/solaris.c @@ -71,7 +71,7 @@ static ALuint SolarisProc(ALvoid *ptr) wrote = write(data->fd, WritePtr, len); if(wrote < 0) { - if(errno != EAGAIN && errno != EWOULDBLOCK) + if(errno != EAGAIN && errno != EWOULDBLOCK && errno != EINTR) { AL_PRINT("write failed: %s\n", strerror(errno)); aluHandleDisconnect(pDevice); |