PcmBuffer: reset size in Clear()
Fix for Mantis #3806. "PcmBuffer::Clear clears the buffer but does not reset the size. If Get is called on the same PcmBuffer later on with a size that is the same as (or less than) it was before the call to Clear, the "else" branch is taken and the memory of buffer (at the address of nullptr) is poisoned instead of the necessary allocation being performed. A memset or memcpy on the returned pointer (nullptr) causes a segmentation fault."
This commit is contained in:
parent
ba79f4c1f9
commit
105b431e4c
@ -46,6 +46,7 @@ struct PcmBuffer {
|
||||
void Clear() {
|
||||
g_free(buffer);
|
||||
buffer = nullptr;
|
||||
size = 0;
|
||||
}
|
||||
|
||||
/**
|
||||
|
Loading…
Reference in New Issue
Block a user