summaryrefslogtreecommitdiffstats
path: root/media
diff options
context:
space:
mode:
authorjrummell@chromium.org <jrummell@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-06-20 02:48:36 +0000
committerjrummell@chromium.org <jrummell@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-06-20 02:48:36 +0000
commit52f8d60c4f9be0064375cf29cf243c1ca3d7da71 (patch)
treefdecc8c7f2a35573c846328cc1f67c2838d8c668 /media
parenta94753f050ce3288e6aecf2cb46d46464841e742 (diff)
downloadchromium_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.cc16
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,