Remove all remaining non-test uses of std::stringstream.
Bug: webrtc:8982
Change-Id: I635a8545c46dc8c89663d64af351e22e65cbcb33
Reviewed-on: https://webrtc-review.googlesource.com/98880
Commit-Queue: Jonas Olsson <jonasolsson@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24715}
diff --git a/api/rtcerror.cc b/api/rtcerror.cc
index 55ac15e..039e7f3 100644
--- a/api/rtcerror.cc
+++ b/api/rtcerror.cc
@@ -36,32 +36,8 @@
namespace webrtc {
-RTCError::RTCError(RTCError&& other)
- : type_(other.type_), have_string_message_(other.have_string_message_) {
- if (have_string_message_) {
- new (&string_message_) std::string(std::move(other.string_message_));
- } else {
- static_message_ = other.static_message_;
- }
-}
-
-RTCError& RTCError::operator=(RTCError&& other) {
- type_ = other.type_;
- if (other.have_string_message_) {
- set_message(std::move(other.string_message_));
- } else {
- set_message(other.static_message_);
- }
- return *this;
-}
-
-RTCError::~RTCError() {
- // If we hold a message string that was built, rather than a static string,
- // we need to delete it.
- if (have_string_message_) {
- string_message_.~basic_string();
- }
-}
+RTCError::RTCError(RTCError&& other) = default;
+RTCError& RTCError::operator=(RTCError&& other) = default;
// static
RTCError RTCError::OK() {
@@ -69,28 +45,11 @@
}
const char* RTCError::message() const {
- if (have_string_message_) {
- return string_message_.c_str();
- } else {
- return static_message_;
- }
+ return message_.c_str();
}
-void RTCError::set_message(const char* message) {
- if (have_string_message_) {
- string_message_.~basic_string();
- have_string_message_ = false;
- }
- static_message_ = message;
-}
-
-void RTCError::set_message(std::string&& message) {
- if (!have_string_message_) {
- new (&string_message_) std::string(std::move(message));
- have_string_message_ = true;
- } else {
- string_message_ = message;
- }
+void RTCError::set_message(std::string message) {
+ message_ = std::move(message);
}
// TODO(jonasolsson): Change to use absl::string_view when it's available.