diff --git a/sdk/objc/api/logging/RTCCallbackLogger.mm b/sdk/objc/api/logging/RTCCallbackLogger.mm index 90bb8b0238..ba6fe1b1cc 100644 --- a/sdk/objc/api/logging/RTCCallbackLogger.mm +++ b/sdk/objc/api/logging/RTCCallbackLogger.mm @@ -19,7 +19,9 @@ #include "rtc_base/log_sinks.h" #include "rtc_base/logging.h" -class CallbackLogSink : public rtc::LogSink { +namespace { + +class CallbackLogSink final : public rtc::LogSink { public: CallbackLogSink(RTCCallbackLoggerMessageHandler callbackHandler) : callback_handler_(callbackHandler) {} @@ -38,13 +40,17 @@ class CallbackLogSink : public rtc::LogSink { RTCCallbackLoggerMessageHandler callback_handler_; }; -class CallbackWithSeverityLogSink : public rtc::LogSink { +class CallbackWithSeverityLogSink final : public rtc::LogSink { public: CallbackWithSeverityLogSink(RTCCallbackLoggerMessageAndSeverityHandler callbackHandler) : callback_handler_(callbackHandler) {} void OnLogMessage(const std::string& message) override { RTC_DCHECK_NOTREACHED(); } + void OnLogMessage(const std::string& message, rtc::LoggingSeverity severity) override { + OnLogMessage(absl::string_view(message), severity); + } + void OnLogMessage(absl::string_view message, rtc::LoggingSeverity severity) override { if (callback_handler_) { RTCLoggingSeverity loggingSeverity = NativeSeverityToObjcSeverity(severity); @@ -71,6 +77,8 @@ class CallbackWithSeverityLogSink : public rtc::LogSink { RTCCallbackLoggerMessageAndSeverityHandler callback_handler_; }; +} + @implementation RTC_OBJC_TYPE (RTCCallbackLogger) { BOOL _hasStarted; std::unique_ptr _logSink;