Index: content/common/gpu/media/gpu_jpeg_decode_accelerator.cc |
diff --git a/content/common/gpu/media/gpu_jpeg_decode_accelerator.cc b/content/common/gpu/media/gpu_jpeg_decode_accelerator.cc |
index de0f58724e186c46d997663fd07f0b7615b69a30..db8ba57e92163c85bab93a941a9b401a7e3bc8b6 100644 |
--- a/content/common/gpu/media/gpu_jpeg_decode_accelerator.cc |
+++ b/content/common/gpu/media/gpu_jpeg_decode_accelerator.cc |
@@ -246,9 +246,6 @@ class GpuJpegDecodeAccelerator::MessageFilter : public IPC::MessageFilter { |
params.output_video_frame_handle, // handle |
0, // data_offset |
base::TimeDelta()); // timestamp |
- frame->AddDestructionObserver( |
- base::Bind(DecodeFinished, base::Passed(&output_shm))); |
- |
if (!frame.get()) { |
LOG(ERROR) << "Could not create VideoFrame for input buffer id " |
<< params.input_buffer_id; |
@@ -258,6 +255,8 @@ class GpuJpegDecodeAccelerator::MessageFilter : public IPC::MessageFilter { |
base::SharedMemory::CloseHandle(params.input_buffer_handle); |
return; |
} |
+ frame->AddDestructionObserver( |
+ base::Bind(DecodeFinished, base::Passed(&output_shm))); |
DCHECK_GT(client_map_.count(*route_id), 0u); |
Client* client = client_map_[*route_id]; |