Masanori Kakura : winegstreamer: Avoid zero division in amt_from_gst_caps_video().
Module: wine Branch: stable Commit: 2bb94dee706c7f8a9b44e329784e4a1db816595d URL: http://source.winehq.org/git/wine.git/?a=commit;h=2bb94dee706c7f8a9b44e32978... Author: Masanori Kakura <kakurasan(a)gmail.com> Date: Wed Jan 25 23:02:20 2017 +0900 winegstreamer: Avoid zero division in amt_from_gst_caps_video(). Signed-off-by: Masanori Kakura <kakurasan(a)gmail.com> Signed-off-by: Andrew Eikum <aeikum(a)codeweavers.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> (cherry picked from commit 442653b94ef21fad97a6cd82fe01bc95a79a52a7) Signed-off-by: Michael Stefaniuc <mstefani(a)winehq.org> --- dlls/winegstreamer/gstdemux.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/dlls/winegstreamer/gstdemux.c b/dlls/winegstreamer/gstdemux.c index c33ed9e..759a5db 100644 --- a/dlls/winegstreamer/gstdemux.c +++ b/dlls/winegstreamer/gstdemux.c @@ -233,9 +233,8 @@ static gboolean amt_from_gst_caps_video(GstCaps *caps, AM_MEDIA_TYPE *amt) bih->biCompression = amt->subtype.Data1; } bih->biSizeImage = width * height * bih->biBitCount / 8; - vih->AvgTimePerFrame = 10000000; - vih->AvgTimePerFrame *= denom; - vih->AvgTimePerFrame /= nom; + if ((vih->AvgTimePerFrame = (REFERENCE_TIME)MulDiv(10000000, denom, nom)) == -1) + vih->AvgTimePerFrame = 0; /* zero division or integer overflow */ vih->rcSource.left = 0; vih->rcSource.right = width; vih->rcSource.top = height;
participants (1)
-
Alexandre Julliard