CopyOnWriteBuffer::SetSize to smaller size memcpy less.
R=kwiberg@webrtc.org Review URL: https://codereview.webrtc.org/2317283004 . Cr-Commit-Position: refs/heads/master@{#14166}
This commit is contained in:
parent
96f2c4df31
commit
291cd8fac3
@ -222,7 +222,13 @@ class CopyOnWriteBuffer {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
CloneDataIfReferenced(std::max(buffer_->capacity(), size));
|
// Clone data if referenced.
|
||||||
|
if (!buffer_->HasOneRef()) {
|
||||||
|
buffer_ = new RefCountedObject<Buffer>(
|
||||||
|
buffer_->data(),
|
||||||
|
std::min(buffer_->size(), size),
|
||||||
|
std::max(buffer_->capacity(), size));
|
||||||
|
}
|
||||||
buffer_->SetSize(size);
|
buffer_->SetSize(size);
|
||||||
RTC_DCHECK(IsConsistent());
|
RTC_DCHECK(IsConsistent());
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user