Index: media/capture/video/linux/video_capture_device_linux.cc |
diff --git a/media/capture/video/linux/video_capture_device_linux.cc b/media/capture/video/linux/video_capture_device_linux.cc |
index c6ddd2b070a4d5434102091bb84743dba60046a1..cb12175ab14bb94a57f042f67cf81d265b02af99 100644 |
--- a/media/capture/video/linux/video_capture_device_linux.cc |
+++ b/media/capture/video/linux/video_capture_device_linux.cc |
@@ -79,7 +79,16 @@ void VideoCaptureDeviceLinux::StopAndDeAllocate() { |
base::Bind(&V4L2CaptureDelegate::StopAndDeAllocate, capture_impl_)); |
v4l2_thread_.Stop(); |
- capture_impl_ = NULL; |
+ capture_impl_ = nullptr; |
+} |
+ |
+void VideoCaptureDeviceLinux::TakePhoto(TakePhotoCallback callback) { |
+ DCHECK(capture_impl_); |
+ if (!v4l2_thread_.IsRunning()) |
+ return; |
+ v4l2_thread_.task_runner()->PostTask( |
+ FROM_HERE, base::Bind(&V4L2CaptureDelegate::TakePhoto, capture_impl_, |
+ base::Passed(&callback))); |
} |
void VideoCaptureDeviceLinux::SetRotation(int rotation) { |