diff options
author | Chris Robinson <[email protected]> | 2011-08-12 15:42:36 -0700 |
---|---|---|
committer | Chris Robinson <[email protected]> | 2011-08-12 15:42:36 -0700 |
commit | 412cec73de3e127bbfba9f91c9586089217621df (patch) | |
tree | 42b6eac24a079727728add68800df5c7badcc07e /Alc/ALu.c | |
parent | a72c0f7470ff76c363810cfaf2a3fd6282cd8cc2 (diff) |
Avoid a temporary throw-away buffer for mixing null output
Diffstat (limited to 'Alc/ALu.c')
-rw-r--r-- | Alc/ALu.c | 35 |
1 files changed, 19 insertions, 16 deletions
@@ -1101,23 +1101,26 @@ ALvoid aluMixData(ALCdevice *device, ALvoid *buffer, ALsizei size) } } - switch(device->FmtType) + if(buffer) { - case DevFmtByte: - Write_ALbyte(device, buffer, SamplesToDo); - break; - case DevFmtUByte: - Write_ALubyte(device, buffer, SamplesToDo); - break; - case DevFmtShort: - Write_ALshort(device, buffer, SamplesToDo); - break; - case DevFmtUShort: - Write_ALushort(device, buffer, SamplesToDo); - break; - case DevFmtFloat: - Write_ALfloat(device, buffer, SamplesToDo); - break; + switch(device->FmtType) + { + case DevFmtByte: + Write_ALbyte(device, buffer, SamplesToDo); + break; + case DevFmtUByte: + Write_ALubyte(device, buffer, SamplesToDo); + break; + case DevFmtShort: + Write_ALshort(device, buffer, SamplesToDo); + break; + case DevFmtUShort: + Write_ALushort(device, buffer, SamplesToDo); + break; + case DevFmtFloat: + Write_ALfloat(device, buffer, SamplesToDo); + break; + } } size -= SamplesToDo; |