Chromium Code Reviews| Index: content/common/gpu/media/dxva_video_decode_accelerator_win.cc |
| diff --git a/content/common/gpu/media/dxva_video_decode_accelerator_win.cc b/content/common/gpu/media/dxva_video_decode_accelerator_win.cc |
| index d356852d2544dbd773e20c8dcb5511c99fa43a10..9f69e4b4b55420e431c4bd3bca81ce194c8f444c 100644 |
| --- a/content/common/gpu/media/dxva_video_decode_accelerator_win.cc |
| +++ b/content/common/gpu/media/dxva_video_decode_accelerator_win.cc |
| @@ -236,12 +236,12 @@ static IMFSample* CreateInputSample(const uint8_t* stream, |
| CHECK_GE(static_cast<int>(max_length), size); |
| memcpy(destination, stream, size); |
| - hr = buffer->Unlock(); |
| - RETURN_ON_HR_FAILURE(hr, "Failed to unlock buffer", NULL); |
| - |
| hr = buffer->SetCurrentLength(size); |
| RETURN_ON_HR_FAILURE(hr, "Failed to set buffer length", NULL); |
| + hr = buffer->Unlock(); |
| + RETURN_ON_HR_FAILURE(hr, "Failed to unlock buffer", NULL); |
| + |
| return sample.Detach(); |
| } |
| @@ -254,7 +254,9 @@ static IMFSample* CreateSampleFromInputBuffer( |
| "Failed in base::SharedMemory::Map", NULL); |
| return CreateInputSample(reinterpret_cast<const uint8_t*>(shm.memory()), |
| - bitstream_buffer.size(), stream_size, alignment); |
| + bitstream_buffer.size(), |
| + std::min<int>(bitstream_buffer.size(), stream_size), |
|
DaleCurtis
2016/02/04 22:13:18
seems this should be uint32_t or DWORD, not int? D
ananta
2016/02/04 22:32:21
Done.
|
| + alignment); |
| } |
| // Helper function to create a COM object instance from a DLL. The alternative |