Chromium Code Reviews| Index: media/filters/ffmpeg_demuxer.cc |
| diff --git a/media/filters/ffmpeg_demuxer.cc b/media/filters/ffmpeg_demuxer.cc |
| index e95dcefe8a321fd72fc2e7390c099ae7c5af08f7..aa413ff4e489f16752b240e72a960f9daa397611 100644 |
| --- a/media/filters/ffmpeg_demuxer.cc |
| +++ b/media/filters/ffmpeg_demuxer.cc |
| @@ -287,7 +287,7 @@ base::TimeDelta FFmpegDemuxerStream::ConvertStreamTimestamp( |
| FFmpegDemuxer::FFmpegDemuxer( |
| const scoped_refptr<base::MessageLoopProxy>& message_loop, |
| DataSource* data_source, |
| - const FFmpegNeedKeyCB& need_key_cb, |
| + const NeedKeyCB& need_key_cb, |
| const scoped_refptr<MediaLog>& media_log) |
| : host_(NULL), |
| message_loop_(message_loop), |
| @@ -812,10 +812,11 @@ void FFmpegDemuxer::StreamHasEnded() { |
| void FFmpegDemuxer::FireNeedKey(const std::string& init_data_type, |
| const std::string& encryption_key_id) { |
| - int key_id_size = encryption_key_id.size(); |
| - scoped_ptr<uint8[]> key_id_local(new uint8[key_id_size]); |
| - memcpy(key_id_local.get(), encryption_key_id.data(), key_id_size); |
| - need_key_cb_.Run(init_data_type, key_id_local.Pass(), key_id_size); |
| + size_t key_id_size = encryption_key_id.size(); |
| + std::vector<uint8> key_id_local(key_id_size); |
| + if (key_id_size) |
| + memcpy(&key_id_local[0], encryption_key_id.data(), key_id_size); |
|
xhwang
2013/08/23 17:24:37
How about:
std::vector<uint8> key_id_local(encryp
acolwell GONE FROM CHROMIUM
2013/08/23 19:55:28
Done. I didn't realize this would work. :)
|
| + need_key_cb_.Run(init_data_type, key_id_local); |
| } |
| void FFmpegDemuxer::NotifyCapacityAvailable() { |