dcsctp: Use rtc::CopyOnWriteBuffer
This avoids copying the payload at all. Future CL will change the transport. In performance tests, memcpy was visible in the performance profiles prior to this change. Bug: webrtc:12943 Change-Id: I507a1a316165db748e73cf0d58c1be62cc76a2d2 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/236346 Commit-Queue: Victor Boivie <boivie@webrtc.org> Reviewed-by: Florent Castelli <orphis@webrtc.org> Cr-Commit-Position: refs/heads/main@{#35428}
This commit is contained in:
committed by
WebRTC LUCI CQ
parent
8695282243
commit
2db59a6584
@ -977,7 +977,7 @@ void DcSctpSocket::HandleDataCommon(AnyDataChunk& chunk) {
|
||||
AnyDataChunk::ImmediateAckFlag immediate_ack = chunk.options().immediate_ack;
|
||||
Data data = std::move(chunk).extract();
|
||||
|
||||
if (data.payload.empty()) {
|
||||
if (data.payload.size() == 0) {
|
||||
// Empty DATA chunks are illegal.
|
||||
packet_sender_.Send(tcb_->PacketBuilder().Add(
|
||||
ErrorChunk(Parameters::Builder().Add(NoUserDataCause(tsn)).Build())));
|
||||
|
||||
Reference in New Issue
Block a user