diff options
Diffstat (limited to 'OpenAL32')
-rw-r--r-- | OpenAL32/Include/alSource.h | 1 | ||||
-rw-r--r-- | OpenAL32/alSource.c | 2 |
2 files changed, 3 insertions, 0 deletions
diff --git a/OpenAL32/Include/alSource.h b/OpenAL32/Include/alSource.h index 2bd1db08..617dc4e3 100644 --- a/OpenAL32/Include/alSource.h +++ b/OpenAL32/Include/alSource.h @@ -96,6 +96,7 @@ typedef struct ALsource // Current gains, which are ramped while mixed ALfloat DryGains[OUTPUTCHANNELS]; ALfloat WetGain; + ALboolean FirstStart; struct ALsource *next; } ALsource; diff --git a/OpenAL32/alSource.c b/OpenAL32/alSource.c index 50217783..e130e044 100644 --- a/OpenAL32/alSource.c +++ b/OpenAL32/alSource.c @@ -1435,6 +1435,7 @@ ALAPI ALvoid ALAPIENTRY alSourcePlayv(ALsizei n, const ALuint *pSourceList) pSource->position = 0; pSource->position_fraction = 0; pSource->BuffersPlayed = 0; + pSource->FirstStart = AL_TRUE; pSource->ulBufferID = pSource->queue->buffer; @@ -1451,6 +1452,7 @@ ALAPI ALvoid ALAPIENTRY alSourcePlayv(ALsizei n, const ALuint *pSourceList) pSource->state = AL_PLAYING; pSource->inuse = AL_TRUE; pSource->play = AL_TRUE; + pSource->FirstStart = AL_FALSE; } // Check if an Offset has been set |