| Index: content/browser/renderer_host/media/audio_input_sync_writer.cc
|
| diff --git a/content/browser/renderer_host/media/audio_input_sync_writer.cc b/content/browser/renderer_host/media/audio_input_sync_writer.cc
|
| index c72b1cd7b0e5b1be50ccc754bcb6fc4d1b5dd336..b1767aff03a860669ff108814537d5bc39f297c2 100644
|
| --- a/content/browser/renderer_host/media/audio_input_sync_writer.cc
|
| +++ b/content/browser/renderer_host/media/audio_input_sync_writer.cc
|
| @@ -5,6 +5,7 @@
|
| #include "content/browser/renderer_host/media/audio_input_sync_writer.h"
|
|
|
| #include <algorithm>
|
| +#include <utility>
|
|
|
| #include "base/format_macros.h"
|
| #include "base/metrics/histogram_macros.h"
|
| @@ -47,6 +48,7 @@ AudioInputSyncWriter::AudioInputSyncWriter(void* shared_memory,
|
| write_count_(0),
|
| write_to_fifo_count_(0),
|
| write_error_count_(0),
|
| + had_socket_error_(false),
|
| trailing_write_to_fifo_count_(0),
|
| trailing_write_error_count_(0) {
|
| DCHECK_GT(shared_memory_segment_count, 0);
|
| @@ -328,13 +330,20 @@ void AudioInputSyncWriter::WriteParametersToCurrentSegment(
|
| bool AudioInputSyncWriter::SignalDataWrittenAndUpdateCounters() {
|
| if (socket_->Send(¤t_segment_id_, sizeof(current_segment_id_)) !=
|
| sizeof(current_segment_id_)) {
|
| - const std::string error_message = "AISW: No room in socket buffer.";
|
| - LOG(WARNING) << error_message;
|
| - AddToNativeLog(error_message);
|
| - TRACE_EVENT_INSTANT0("audio",
|
| - "AudioInputSyncWriter: No room in socket buffer",
|
| - TRACE_EVENT_SCOPE_THREAD);
|
| + // Ensure we don't log consecutive errors as this can lead to a large
|
| + // amount of logs.
|
| + if (!had_socket_error_) {
|
| + had_socket_error_ = true;
|
| + const std::string error_message = "AISW: No room in socket buffer.";
|
| + PLOG(WARNING) << error_message;
|
| + AddToNativeLog(error_message);
|
| + TRACE_EVENT_INSTANT0("audio",
|
| + "AudioInputSyncWriter: No room in socket buffer",
|
| + TRACE_EVENT_SCOPE_THREAD);
|
| + }
|
| return false;
|
| + } else {
|
| + had_socket_error_ = false;
|
| }
|
|
|
| if (++current_segment_id_ >= shared_memory_segment_count_)
|
|
|