aboutsummaryrefslogtreecommitdiffstats
path: root/Alc/oss.c
diff options
context:
space:
mode:
Diffstat (limited to 'Alc/oss.c')
-rw-r--r--Alc/oss.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/Alc/oss.c b/Alc/oss.c
index fa463e0c..b5adfcbe 100644
--- a/Alc/oss.c
+++ b/Alc/oss.c
@@ -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);