Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(236)

Unified Diff: media/base/data_buffer.cc

Issue 10447035: Introducing DecoderBuffer and general Buffer cleanup. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Review fix! Created 8 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: media/base/data_buffer.cc
diff --git a/media/base/data_buffer.cc b/media/base/data_buffer.cc
index 9a491e355593d251e83dfce1a45da9caf2b34595..56d858cd308f21c6b749d9829cbce5757402c37f 100644
--- a/media/base/data_buffer.cc
+++ b/media/base/data_buffer.cc
@@ -4,10 +4,6 @@
#include "base/logging.h"
#include "media/base/data_buffer.h"
-#include "media/base/decrypt_config.h"
-#if !defined(OS_ANDROID)
-#include "media/ffmpeg/ffmpeg_common.h"
-#endif
namespace media {
@@ -20,38 +16,32 @@ DataBuffer::DataBuffer(scoped_array<uint8> buffer, int buffer_size)
DataBuffer::DataBuffer(int buffer_size)
: Buffer(base::TimeDelta(), base::TimeDelta()),
- data_(new uint8[buffer_size]),
buffer_size_(buffer_size),
data_size_(0) {
- CHECK(data_.get()) << "DataBuffer ctor failed to allocate memory";
-
- // Prevent arbitrary pointers.
- if (buffer_size == 0)
- data_.reset(NULL);
+ Initialize();
}
DataBuffer::DataBuffer(const uint8* data, int data_size)
: Buffer(base::TimeDelta(), base::TimeDelta()),
- buffer_size_(0),
- data_size_(0) {
- if (data_size == 0)
- return;
+ buffer_size_(data_size),
+ data_size_(data_size) {
+ Initialize();
+ memcpy(data_.get(), data, data_size_);
+}
- int padding_size = 0;
-#if !defined(OS_ANDROID)
- // FFmpeg assumes all input buffers are padded with this value.
- padding_size = FF_INPUT_BUFFER_PADDING_SIZE;
-#endif
+DataBuffer::~DataBuffer() {}
+
+void DataBuffer::Initialize() {
+ // Prevent arbitrary pointers.
+ if (buffer_size_ <= 0) {
+ buffer_size_ = data_size_ = 0;
+ data_.reset();
+ return;
+ }
- buffer_size_ = data_size + padding_size;
data_.reset(new uint8[buffer_size_]);
- memcpy(data_.get(), data, data_size);
- memset(data_.get() + data_size, 0, padding_size);
- SetDataSize(data_size);
}
-DataBuffer::~DataBuffer() {}
-
scoped_refptr<DataBuffer> DataBuffer::CopyFrom(const uint8* data,
int data_size) {
return make_scoped_refptr(new DataBuffer(data, data_size));
@@ -65,10 +55,6 @@ int DataBuffer::GetDataSize() const {
return data_size_;
}
-const DecryptConfig* DataBuffer::GetDecryptConfig() const {
- return decrypt_config_.get();
-}
-
uint8* DataBuffer::GetWritableData() {
return data_.get();
}
@@ -82,8 +68,4 @@ int DataBuffer::GetBufferSize() const {
return buffer_size_;
}
-void DataBuffer::SetDecryptConfig(scoped_ptr<DecryptConfig> decrypt_config) {
- decrypt_config_ = decrypt_config.Pass();
-}
-
} // namespace media

Powered by Google App Engine
This is Rietveld 408576698