rtpstats: guard against division by zero
authorHavard Graff <havard@pexip.com>
Sun, 3 May 2020 11:17:46 +0000 (13:17 +0200)
committerGStreamer Merge Bot <gitlab-merge-bot@gstreamer-foundation.org>
Fri, 26 Jun 2020 15:29:25 +0000 (15:29 +0000)
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/646>

gst/rtpmanager/rtpstats.c

index 88e5f07..45fff37 100644 (file)
@@ -622,10 +622,12 @@ rtp_twcc_stats_calculate_windowed_stats (RTPTWCCStats * stats)
     stats->avg_delta_of_delta = avg_delta_of_delta;
   }
 
-  stats->bitrate_sent =
-      gst_util_uint64_scale (bits_sent, GST_SECOND, local_duration);
-  stats->bitrate_recv =
-      gst_util_uint64_scale (bits_recv, GST_SECOND, remote_duration);
+  if (local_duration > 0)
+    stats->bitrate_sent =
+        gst_util_uint64_scale (bits_sent, GST_SECOND, local_duration);
+  if (remote_duration > 0)
+    stats->bitrate_recv =
+        gst_util_uint64_scale (bits_recv, GST_SECOND, remote_duration);
 
   GST_DEBUG ("Got stats: bits_sent: %u, bits_recv: %u, packets_sent = %u, "
       "packets_recv: %u, packetlost_pct = %f, sent_bitrate = %u, "