From b94fbac7ef900dcbe1ce234eb5ff2b91b4bcec04 Mon Sep 17 00:00:00 2001 From: jpark37 Date: Tue, 6 Jul 2021 11:29:00 -0700 Subject: [PATCH] libobs: Fix warnings Cast away truncation, and widen type before multiplication. --- libobs/obs-audio.c | 9 +++++---- libobs/obs-internal.h | 2 +- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/libobs/obs-audio.c b/libobs/obs-audio.c index 1b7ef6e76820e8..4a40e331aa1cf7 100644 --- a/libobs/obs-audio.c +++ b/libobs/obs-audio.c @@ -101,9 +101,10 @@ static bool ignore_audio(obs_source_t *source, size_t channels, if (num_floats) { /* round up the number of samples to drop */ - size_t drop = util_mul_div64(start_ts - source->audio_ts - 1, - sample_rate, 1000000000ULL) + - 1; + size_t drop = + (size_t)util_mul_div64(start_ts - source->audio_ts - 1, + sample_rate, 1000000000ULL) + + 1; if (drop > num_floats) drop = num_floats; @@ -344,7 +345,7 @@ static void add_audio_buffering(struct obs_core_audio *audio, AUDIO_OUTPUT_FRAMES); while (ticks--) { - int cur_ticks = ++audio->buffering_wait_ticks; + const uint64_t cur_ticks = ++audio->buffering_wait_ticks; new_ts.end = new_ts.start; new_ts.start = diff --git a/libobs/obs-internal.h b/libobs/obs-internal.h index a8e1ee8a2dc8da..af4b22fdb9b284 100644 --- a/libobs/obs-internal.h +++ b/libobs/obs-internal.h @@ -330,7 +330,7 @@ struct obs_core_audio { uint64_t buffered_ts; struct circlebuf buffered_timestamps; - int buffering_wait_ticks; + uint64_t buffering_wait_ticks; int total_buffering_ticks; float user_volume;