only realloc if the buffer needs to be bigger; having a buffer that's too
big is OK
This commit is contained in:
@@ -32,16 +32,15 @@ OSStatus AudioConverter::FormatConverterInputProc(UInt32& ioNumberDataPackets,
|
|||||||
{
|
{
|
||||||
AudioBuffer& buf = ioData.mBuffers[0];
|
AudioBuffer& buf = ioData.mBuffers[0];
|
||||||
|
|
||||||
// This really shouldn't happen more than once, but better be sure.
|
if( mBufferSize < buf.mDataByteSize )
|
||||||
if( mBufferSize != buf.mDataByteSize )
|
|
||||||
{
|
{
|
||||||
delete [] mBuffer;
|
delete [] mBuffer;
|
||||||
mBufferSize = buf.mDataByteSize;
|
|
||||||
mBuffer = new UInt8[mBufferSize];
|
mBuffer = new UInt8[mBufferSize];
|
||||||
|
mBufferSize = buf.mDataByteSize;
|
||||||
}
|
}
|
||||||
|
|
||||||
mDriver->FillConverter(mBuffer, mBufferSize);
|
|
||||||
buf.mData = mBuffer;
|
buf.mData = mBuffer;
|
||||||
|
|
||||||
|
mDriver->FillConverter( buf.mData, buf.mDataByteSize );
|
||||||
return noErr;
|
return noErr;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user