Chromium Code Reviews| Index: media/filters/source_buffer_stream.cc |
| diff --git a/media/filters/source_buffer_stream.cc b/media/filters/source_buffer_stream.cc |
| index ab6b4eea38f3940a302ee1ba8a746d421ed76984..43959fb1b41c8791a70f53d0211611a8e1c3747b 100644 |
| --- a/media/filters/source_buffer_stream.cc |
| +++ b/media/filters/source_buffer_stream.cc |
| @@ -606,7 +606,7 @@ void SourceBufferStream::SetConfigIds(const BufferQueue& buffers) { |
| void SourceBufferStream::GarbageCollectIfNeeded() { |
| // Compute size of |ranges_|. |
| - int ranges_size = 0; |
| + size_t ranges_size = 0; |
| for (RangeList::iterator itr = ranges_.begin(); itr != ranges_.end(); ++itr) |
| ranges_size += (*itr)->size_in_bytes(); |
|
wolenetz
2015/07/17 20:23:53
SourceBufferRange::size_in_bytes() returns int. Co
servolk
2015/07/17 21:34:07
Done.
|
| @@ -614,7 +614,7 @@ void SourceBufferStream::GarbageCollectIfNeeded() { |
| if (ranges_size <= memory_limit_) |
| return; |
| - int bytes_to_free = ranges_size - memory_limit_; |
| + size_t bytes_to_free = ranges_size - memory_limit_; |
| DVLOG(2) << __FUNCTION__ << " " << GetStreamTypeName() << ": Before GC" |
| << " ranges_size=" << ranges_size |
| @@ -622,14 +622,14 @@ void SourceBufferStream::GarbageCollectIfNeeded() { |
| << " memory_limit_=" << memory_limit_; |
| // Begin deleting after the last appended buffer. |
| - int bytes_freed = FreeBuffersAfterLastAppended(bytes_to_free); |
| + size_t bytes_freed = FreeBuffersAfterLastAppended(bytes_to_free); |
| // Begin deleting from the front. |
| - if (bytes_to_free - bytes_freed > 0) |
| + if (bytes_freed < bytes_to_free) |
| bytes_freed += FreeBuffers(bytes_to_free - bytes_freed, false); |
| // Begin deleting from the back. |
| - if (bytes_to_free - bytes_freed > 0) |
| + if (bytes_freed < bytes_to_free) |
| bytes_freed += FreeBuffers(bytes_to_free - bytes_freed, true); |
| DVLOG(2) << __FUNCTION__ << " " << GetStreamTypeName() << ": After GC" |
| @@ -1260,6 +1260,10 @@ base::TimeDelta SourceBufferStream::GetMaxInterbufferDistance() const { |
| return max_interbuffer_distance_; |
| } |
| +void SourceBufferStream::SetMemoryLimit(size_t memory_limit) { |
| + memory_limit_ = memory_limit; |
| +} |
| + |
| bool SourceBufferStream::UpdateAudioConfig(const AudioDecoderConfig& config) { |
| DCHECK(!audio_configs_.empty()); |
| DCHECK(video_configs_.empty()); |