Make fewer copies when using StringBuilder.
Replace calls to .str() which copies with .Release which moves in cases where that's safe.
This CL was generated by this command:
git grep -l 'StringBuilder' |
xargs perl -i -0 -pe "s/(rtc::StringBuilder (\S+);.*?return )\\g2.str\(\)/\$1\$2.Release\(\)/sg"
Bug: webrtc:8982
Change-Id: If4dadbeb039df010aaaa9e58da81c1971a84fe8f
Reviewed-on: https://webrtc-review.googlesource.com/100307
Commit-Queue: Jonas Olsson <jonasolsson@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24790}
diff --git a/api/candidate.cc b/api/candidate.cc
index 128c470..c2c6c53 100644
--- a/api/candidate.cc
+++ b/api/candidate.cc
@@ -78,7 +78,7 @@
<< ":" << related_address_.ToString() << ":" << username_ << ":"
<< password_ << ":" << network_id_ << ":" << network_cost_ << ":"
<< generation_ << "]";
- return ost.str();
+ return ost.Release();
}
uint32_t Candidate::GetPriority(uint32_t type_preference,
diff --git a/api/test/videocodec_test_stats.cc b/api/test/videocodec_test_stats.cc
index 78c39d0..8a935f3 100644
--- a/api/test/videocodec_test_stats.cc
+++ b/api/test/videocodec_test_stats.cc
@@ -36,7 +36,7 @@
ss << " decode_time_us " << decode_time_us;
ss << " rtp_timestamp " << rtp_timestamp;
ss << " target_bitrate_kbps " << target_bitrate_kbps;
- return ss.str();
+ return ss.Release();
}
VideoCodecTestStats::VideoStatistics::VideoStatistics() = default;
@@ -83,7 +83,7 @@
ss << "\n" << prefix << "num_key_frames: " << num_key_frames;
ss << "\n" << prefix << "num_spatial_resizes: " << num_spatial_resizes;
ss << "\n" << prefix << "max_nalu_size_bytes: " << max_nalu_size_bytes;
- return ss.str();
+ return ss.Release();
}
VideoCodecTestStats::FrameStatistics::FrameStatistics(size_t frame_number,