From 2a362c6fb1dc4b734af57d060cd7d612b6237f91 Mon Sep 17 00:00:00 2001 From: Per x Johansson Date: Tue, 11 Mar 2014 14:56:30 +0100 Subject: [PATCH] matroskademux: fix assert on fps lower than 1 Fixes assert caused by gst_duration_to_fraction calling gst_util_uint64_scale_int with a denominator of 0 when fps is less than 1. https://bugzilla.gnome.org/show_bug.cgi?id=726106 --- gst/matroska/matroska-demux.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/gst/matroska/matroska-demux.c b/gst/matroska/matroska-demux.c index b6000b8..bdd10f6 100644 --- a/gst/matroska/matroska-demux.c +++ b/gst/matroska/matroska-demux.c @@ -4787,9 +4787,11 @@ gst_duration_to_fraction (guint64 duration, gint * dest_n, gint * dest_d) for (i = 0; i < G_N_ELEMENTS (common_den); i++) { d = common_den[i]; n = floor (0.5 + (d * 1e9) / duration); - a = gst_util_uint64_scale_int (1000000000, d, n); - if (duration >= a - 2 && duration <= a + 2) { - goto out; + if (n > 0) { + a = gst_util_uint64_scale_int (1000000000, d, n); + if (duration >= a - 2 && duration <= a + 2) { + goto out; + } } } -- 2.7.4