summaryrefslogtreecommitdiffstats
path: root/media/video
diff options
context:
space:
mode:
authorwjia@chromium.org <wjia@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-03-28 16:58:38 +0000
committerwjia@chromium.org <wjia@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-03-28 16:58:38 +0000
commit7a220e70a464fc62eafbe0cdfc705d824418b0ec (patch)
tree2e46b4c0b50abbebf4d1c452f3cbcf024c58916f /media/video
parentfd868af50ccaded5e7e216bcb095ba46a4c4270a (diff)
downloadchromium_src-7a220e70a464fc62eafbe0cdfc705d824418b0ec.zip
chromium_src-7a220e70a464fc62eafbe0cdfc705d824418b0ec.tar.gz
chromium_src-7a220e70a464fc62eafbe0cdfc705d824418b0ec.tar.bz2
[Coverity] Fixed frame size
It's wrong to use sizeof(pointer) to get the size of video frame. Need remember the frame size when it's allocated. CID=100299 Review URL: https://chromiumcodereview.appspot.com/9837095 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@129428 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'media/video')
-rw-r--r--media/video/capture/fake_video_capture_device.cc6
-rw-r--r--media/video/capture/fake_video_capture_device.h1
2 files changed, 5 insertions, 2 deletions
diff --git a/media/video/capture/fake_video_capture_device.cc b/media/video/capture/fake_video_capture_device.cc
index 7f1f6e5..acbd83a 100644
--- a/media/video/capture/fake_video_capture_device.cc
+++ b/media/video/capture/fake_video_capture_device.cc
@@ -41,7 +41,8 @@ FakeVideoCaptureDevice::FakeVideoCaptureDevice(const Name& device_name)
: device_name_(device_name),
observer_(NULL),
state_(kIdle),
- capture_thread_("CaptureThread") {
+ capture_thread_("CaptureThread"),
+ frame_size_(0) {
}
FakeVideoCaptureDevice::~FakeVideoCaptureDevice() {
@@ -75,6 +76,7 @@ void FakeVideoCaptureDevice::Allocate(int width,
current_settings.width * current_settings.height * 3 / 2;
fake_frame_.reset(new uint8[fake_frame_size]);
memset(fake_frame_.get(), 0, fake_frame_size);
+ frame_size_ = fake_frame_size;
state_ = kAllocated;
observer_->OnFrameInfo(current_settings);
@@ -118,7 +120,7 @@ void FakeVideoCaptureDevice::OnCaptureTask() {
}
// Give the captured frame to the observer.
observer_->OnIncomingCapturedFrame(fake_frame_.get(),
- sizeof(fake_frame_.get()),
+ frame_size_,
base::Time::Now());
// Reschedule next CaptureTask.
capture_thread_.message_loop()->PostDelayedTask(
diff --git a/media/video/capture/fake_video_capture_device.h b/media/video/capture/fake_video_capture_device.h
index 1d8c3f1..a80f945 100644
--- a/media/video/capture/fake_video_capture_device.h
+++ b/media/video/capture/fake_video_capture_device.h
@@ -50,6 +50,7 @@ class MEDIA_EXPORT FakeVideoCaptureDevice : public VideoCaptureDevice {
VideoCaptureDevice::EventHandler* observer_;
InternalState state_;
base::Thread capture_thread_;
+ int frame_size_;
scoped_array<uint8> fake_frame_;
DISALLOW_IMPLICIT_CONSTRUCTORS(FakeVideoCaptureDevice);