diff options
author | jrummell@chromium.org <jrummell@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-06-20 02:48:36 +0000 |
---|---|---|
committer | jrummell@chromium.org <jrummell@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-06-20 02:48:36 +0000 |
commit | 52f8d60c4f9be0064375cf29cf243c1ca3d7da71 (patch) | |
tree | fdecc8c7f2a35573c846328cc1f67c2838d8c668 /media | |
parent | a94753f050ce3288e6aecf2cb46d46464841e742 (diff) | |
download | chromium_src-52f8d60c4f9be0064375cf29cf243c1ca3d7da71.zip chromium_src-52f8d60c4f9be0064375cf29cf243c1ca3d7da71.tar.gz chromium_src-52f8d60c4f9be0064375cf29cf243c1ca3d7da71.tar.bz2 |
Changes to avoid memory leak in the audio_buffer test code.
BUG=
Review URL: https://chromiumcodereview.appspot.com/16852005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@207283 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'media')
-rw-r--r-- | media/base/audio_buffer_unittest.cc | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/media/base/audio_buffer_unittest.cc b/media/base/audio_buffer_unittest.cc index f4f9ebf..8250ed5 100644 --- a/media/base/audio_buffer_unittest.cc +++ b/media/base/audio_buffer_unittest.cc @@ -30,9 +30,9 @@ static scoped_refptr<AudioBuffer> MakeInterleavedBuffer( // start + channels * increment // start + 2 * channels * increment, ... int buffer_size = frames * channels * sizeof(T); - uint8* memory = new uint8[buffer_size]; - uint8* data[] = { memory }; - T* buffer = reinterpret_cast<T*>(memory); + scoped_ptr<uint8[]> memory(new uint8[buffer_size]); + uint8* data[] = { memory.get() }; + T* buffer = reinterpret_cast<T*>(memory.get()); for (int i = 0; i < frames * channels; ++i) { buffer[i] = start; start += increment; @@ -62,12 +62,12 @@ static scoped_refptr<AudioBuffer> MakePlanarBuffer( // start + frames * increment // start + (frames + 1) * increment // start + (frames + 2) * increment, ... - uint8** data = new uint8*[channels]; int buffer_size = frames * sizeof(T); + scoped_ptr<uint8*[]> data(new uint8*[channels]); + scoped_ptr<uint8[]> memory(new uint8[channels * buffer_size]); for (int i = 0; i < channels; ++i) { - uint8* memory = new uint8[buffer_size]; - data[i] = memory; - T* buffer = reinterpret_cast<T*>(memory); + data.get()[i] = memory.get() + i * buffer_size; + T* buffer = reinterpret_cast<T*>(data.get()[i]); for (int j = 0; j < frames; ++j) { buffer[j] = start; start += increment; @@ -76,7 +76,7 @@ static scoped_refptr<AudioBuffer> MakePlanarBuffer( // Duration is 1 second per frame (for simplicity). base::TimeDelta duration = base::TimeDelta::FromSeconds(frames); return AudioBuffer::CopyFrom( - format, channels, frames, data, start_time, duration); + format, channels, frames, data.get(), start_time, duration); } static void VerifyResult(float* channel_data, |