summaryrefslogtreecommitdiffstats
path: root/src/audio_core/renderer/behavior/behavior_info.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/audio_core/renderer/behavior/behavior_info.cpp')
-rw-r--r--src/audio_core/renderer/behavior/behavior_info.cpp14
1 files changed, 8 insertions, 6 deletions
diff --git a/src/audio_core/renderer/behavior/behavior_info.cpp b/src/audio_core/renderer/behavior/behavior_info.cpp
index c5d4d66d8..92140aaea 100644
--- a/src/audio_core/renderer/behavior/behavior_info.cpp
+++ b/src/audio_core/renderer/behavior/behavior_info.cpp
@@ -43,13 +43,15 @@ void BehaviorInfo::AppendError(ErrorInfo& error) {
}
void BehaviorInfo::CopyErrorInfo(std::span<ErrorInfo> out_errors, u32& out_count) {
- auto error_count_{std::min(error_count, MaxErrors)};
- std::memset(out_errors.data(), 0, MaxErrors * sizeof(ErrorInfo));
-
- for (size_t i = 0; i < error_count_; i++) {
- out_errors[i] = errors[i];
+ out_count = std::min(error_count, MaxErrors);
+
+ for (size_t i = 0; i < MaxErrors; i++) {
+ if (i < out_count) {
+ out_errors[i] = errors[i];
+ } else {
+ out_errors[i] = {};
+ }
}
- out_count = error_count_;
}
void BehaviorInfo::UpdateFlags(const Flags flags_) {