Return const char*
from ToString(RTCErrorType error).
Returning absl::string_view causes problems to the Chromium/WebRTC component build because absl::operator<< needs to be exported. This CL switches to `const char*` which should be enough to avoid to generate temporaries. Bug: webrtc:9419 Change-Id: If169a6f95c7efd21ac8ce108c7f2f80a76ff2313 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/153842 Reviewed-by: Karl Wiberg <kwiberg@webrtc.org> Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org> Cr-Commit-Position: refs/heads/master@{#29250}
This commit is contained in:

committed by
Commit Bot

parent
e0b31677b6
commit
fb59a6aa3f
@ -227,7 +227,6 @@ rtc_source_set("rtc_error") {
|
|||||||
"../rtc_base:logging",
|
"../rtc_base:logging",
|
||||||
"../rtc_base:macromagic",
|
"../rtc_base:macromagic",
|
||||||
"../rtc_base/system:rtc_export",
|
"../rtc_base/system:rtc_export",
|
||||||
"//third_party/abseil-cpp/absl/strings",
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -10,12 +10,11 @@
|
|||||||
|
|
||||||
#include "api/rtc_error.h"
|
#include "api/rtc_error.h"
|
||||||
|
|
||||||
#include "absl/strings/string_view.h"
|
|
||||||
#include "rtc_base/arraysize.h"
|
#include "rtc_base/arraysize.h"
|
||||||
|
|
||||||
namespace {
|
namespace {
|
||||||
|
|
||||||
const absl::string_view kRTCErrorTypeNames[] = {
|
const char* kRTCErrorTypeNames[] = {
|
||||||
"NONE",
|
"NONE",
|
||||||
"UNSUPPORTED_OPERATION",
|
"UNSUPPORTED_OPERATION",
|
||||||
"UNSUPPORTED_PARAMETER",
|
"UNSUPPORTED_PARAMETER",
|
||||||
@ -53,7 +52,7 @@ void RTCError::set_message(std::string message) {
|
|||||||
message_ = std::move(message);
|
message_ = std::move(message);
|
||||||
}
|
}
|
||||||
|
|
||||||
absl::string_view ToString(RTCErrorType error) {
|
const char* ToString(RTCErrorType error) {
|
||||||
int index = static_cast<int>(error);
|
int index = static_cast<int>(error);
|
||||||
return kRTCErrorTypeNames[index];
|
return kRTCErrorTypeNames[index];
|
||||||
}
|
}
|
||||||
|
@ -17,7 +17,6 @@
|
|||||||
#include <string>
|
#include <string>
|
||||||
#include <utility> // For std::move.
|
#include <utility> // For std::move.
|
||||||
|
|
||||||
#include "absl/strings/string_view.h"
|
|
||||||
#include "rtc_base/checks.h"
|
#include "rtc_base/checks.h"
|
||||||
#include "rtc_base/logging.h"
|
#include "rtc_base/logging.h"
|
||||||
#include "rtc_base/system/rtc_export.h"
|
#include "rtc_base/system/rtc_export.h"
|
||||||
@ -130,9 +129,9 @@ class RTC_EXPORT RTCError {
|
|||||||
// Outputs the error as a friendly string. Update this method when adding a new
|
// Outputs the error as a friendly string. Update this method when adding a new
|
||||||
// error type.
|
// error type.
|
||||||
//
|
//
|
||||||
// Only intended to be used for logging/diagnostics. The string_view points
|
// Only intended to be used for logging/diagnostics. The returned char* points
|
||||||
// to literal string that lives for the whole duration of the program.
|
// to literal string that lives for the whole duration of the program.
|
||||||
absl::string_view ToString(RTCErrorType error);
|
const char* ToString(RTCErrorType error);
|
||||||
|
|
||||||
#ifdef UNIT_TEST
|
#ifdef UNIT_TEST
|
||||||
inline std::ostream& operator<<( // no-presubmit-check TODO(webrtc:8982)
|
inline std::ostream& operator<<( // no-presubmit-check TODO(webrtc:8982)
|
||||||
|
Reference in New Issue
Block a user