| Index: media/gpu/dxva_video_decode_accelerator_win.cc
|
| diff --git a/media/gpu/dxva_video_decode_accelerator_win.cc b/media/gpu/dxva_video_decode_accelerator_win.cc
|
| index 5f104496f320afe1a718f00c0457bf805de23ab9..9e7c7b630c3f0501c0ae1e6fe602246b41a46cc0 100644
|
| --- a/media/gpu/dxva_video_decode_accelerator_win.cc
|
| +++ b/media/gpu/dxva_video_decode_accelerator_win.cc
|
| @@ -1995,11 +1995,20 @@ void DXVAVideoDecodeAccelerator::StopDecoderThread() {
|
| uint64_t last_process_output_time = g_last_process_output_time;
|
| LARGE_INTEGER perf_frequency;
|
| ::QueryPerformanceFrequency(&perf_frequency);
|
| + uint32_t output_array_size = output_array_size_;
|
| + size_t sample_count;
|
| + {
|
| + base::AutoLock lock(decoder_lock_);
|
| + sample_count = pending_output_samples_.size();
|
| + }
|
| +
|
| base::debug::Alias(&last_exception_code);
|
| base::debug::Alias(&last_unhandled_error);
|
| base::debug::Alias(&last_exception_time);
|
| base::debug::Alias(&last_process_output_time);
|
| base::debug::Alias(&perf_frequency.QuadPart);
|
| + base::debug::Alias(&output_array_size);
|
| + base::debug::Alias(&sample_count);
|
| decoder_thread_.Stop();
|
| }
|
|
|
| @@ -2838,6 +2847,7 @@ bool DXVAVideoDecodeAccelerator::GetVideoFrameDimensions(IMFSample* sample,
|
| d3d11_texture->GetDesc(&d3d11_texture_desc);
|
| *width = d3d11_texture_desc.Width;
|
| *height = d3d11_texture_desc.Height;
|
| + output_array_size_ = d3d11_texture_desc.ArraySize;
|
| } else {
|
| base::win::ScopedComPtr<IDirect3DSurface9> surface;
|
| hr = MFGetService(output_buffer.get(), MR_BUFFER_SERVICE,
|
|
|