diff --git a/media/sctp/sctp_transport.cc b/media/sctp/sctp_transport.cc index b9e7ae318d..8bcec41a28 100644 --- a/media/sctp/sctp_transport.cc +++ b/media/sctp/sctp_transport.cc @@ -36,7 +36,6 @@ enum PreservedErrno { #include "rtc_base/helpers.h" #include "rtc_base/logging.h" #include "rtc_base/numerics/safe_conversions.h" -#include "rtc_base/string_utils.h" #include "rtc_base/thread_checker.h" #include "rtc_base/trace_event.h" #include "usrsctplib/usrsctp.h" diff --git a/modules/audio_device/win/core_audio_utility_win.h b/modules/audio_device/win/core_audio_utility_win.h index 6e2c85bf6f..0ef16ff9cb 100644 --- a/modules/audio_device/win/core_audio_utility_win.h +++ b/modules/audio_device/win/core_audio_utility_win.h @@ -26,7 +26,6 @@ #include "modules/audio_device/audio_device_name.h" #include "modules/audio_device/include/audio_device_defines.h" #include "rtc_base/logging.h" -#include "rtc_base/string_utils.h" #pragma comment(lib, "Avrt.lib") diff --git a/p2p/base/port.cc b/p2p/base/port.cc index b6fca242ed..645cc650cf 100644 --- a/p2p/base/port.cc +++ b/p2p/base/port.cc @@ -29,7 +29,6 @@ #include "rtc_base/network.h" #include "rtc_base/numerics/safe_minmax.h" #include "rtc_base/string_encode.h" -#include "rtc_base/string_utils.h" #include "rtc_base/third_party/base64/base64.h" #include "system_wrappers/include/field_trial.h" diff --git a/pc/webrtc_sdp.cc b/pc/webrtc_sdp.cc index a6165eb3d4..f8c9e70739 100644 --- a/pc/webrtc_sdp.cc +++ b/pc/webrtc_sdp.cc @@ -45,7 +45,6 @@ #include "rtc_base/checks.h" #include "rtc_base/logging.h" #include "rtc_base/message_digest.h" -#include "rtc_base/string_utils.h" #include "rtc_base/strings/string_builder.h" #include "rtc_base/third_party/base64/base64.h" diff --git a/rtc_base/http_common.cc b/rtc_base/http_common.cc index 10cfb3a14e..0456eeaa1c 100644 --- a/rtc_base/http_common.cc +++ b/rtc_base/http_common.cc @@ -30,7 +30,6 @@ #include "rtc_base/logging.h" #include "rtc_base/message_digest.h" #include "rtc_base/socket_address.h" -#include "rtc_base/string_utils.h" #include "rtc_base/strings/string_builder.h" #include "rtc_base/third_party/base64/base64.h" // for Base64 #include "rtc_base/zero_memory.h" // for ExplicitZeroMemory diff --git a/rtc_base/strings/string_builder.cc b/rtc_base/strings/string_builder.cc index 0583dc789a..adf4fa9e81 100644 --- a/rtc_base/strings/string_builder.cc +++ b/rtc_base/strings/string_builder.cc @@ -25,7 +25,7 @@ SimpleStringBuilder::SimpleStringBuilder(rtc::ArrayView buffer) } SimpleStringBuilder& SimpleStringBuilder::operator<<(const char* str) { - return Append(str, strlen(str)); + return Append(str); } SimpleStringBuilder& SimpleStringBuilder::operator<<(char ch) { @@ -106,12 +106,11 @@ SimpleStringBuilder& SimpleStringBuilder::AppendFormat(const char* fmt, ...) { SimpleStringBuilder& SimpleStringBuilder::Append(const char* str, size_t length) { - RTC_DCHECK_LT(size_ + length, buffer_.size()) - << "Buffer size was insufficient"; - const size_t chars_added = rtc::SafeMin(length, buffer_.size() - size_ - 1); - memcpy(&buffer_[size_], str, chars_added); + const size_t chars_added = + rtc::strcpyn(&buffer_[size_], buffer_.size() - size_, str, length); size_ += chars_added; - buffer_[size_] = '\0'; + RTC_DCHECK_EQ(chars_added, length == SIZE_UNKNOWN ? std::strlen(str) : length) + << "Buffer size was insufficient"; RTC_DCHECK(IsConsistent()); return *this; } diff --git a/rtc_base/strings/string_builder.h b/rtc_base/strings/string_builder.h index e528cf2f0e..7c45ac4ace 100644 --- a/rtc_base/strings/string_builder.h +++ b/rtc_base/strings/string_builder.h @@ -18,6 +18,7 @@ #include "absl/strings/string_view.h" #include "api/array_view.h" #include "rtc_base/string_encode.h" +#include "rtc_base/string_utils.h" namespace rtc { @@ -63,7 +64,7 @@ class SimpleStringBuilder { // An alternate way from operator<<() to append a string. This variant is // slightly more efficient when the length of the string to append, is known. - SimpleStringBuilder& Append(const char* str, size_t length); + SimpleStringBuilder& Append(const char* str, size_t length = SIZE_UNKNOWN); private: bool IsConsistent() const { diff --git a/sdk/android/native_unittests/stacktrace/stacktrace_unittest.cc b/sdk/android/native_unittests/stacktrace/stacktrace_unittest.cc index 917dbc972f..4ea3c9f376 100644 --- a/sdk/android/native_unittests/stacktrace/stacktrace_unittest.cc +++ b/sdk/android/native_unittests/stacktrace/stacktrace_unittest.cc @@ -19,7 +19,6 @@ #include "rtc_base/event.h" #include "rtc_base/logging.h" #include "rtc_base/platform_thread.h" -#include "rtc_base/string_utils.h" #include "rtc_base/strings/string_builder.h" #include "rtc_base/system/inline.h" #include "system_wrappers/include/sleep.h" diff --git a/test/logging/log_writer.h b/test/logging/log_writer.h index db4a7371d0..9879eaa0df 100644 --- a/test/logging/log_writer.h +++ b/test/logging/log_writer.h @@ -10,7 +10,6 @@ #ifndef TEST_LOGGING_LOG_WRITER_H_ #define TEST_LOGGING_LOG_WRITER_H_ -#include #include #include #include