From fba9772dd2e1c2eb0b0ef506128e3723a3f069dc Mon Sep 17 00:00:00 2001
From: James Zern <jzern@google.com>
Date: Fri, 22 Feb 2013 11:42:09 -0800
Subject: [PATCH] vp8_first_pass(): avoid floating point div by 0

Change-Id: Id1e6a12db6b0c1d3f64ead8fd8834aadc30fbed2
---
 vp8/encoder/firstpass.c     | 4 +++-
 vp9/encoder/vp9_firstpass.c | 3 ++-
 2 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/vp8/encoder/firstpass.c b/vp8/encoder/firstpass.c
index 68095ca683..ba5dd06e43 100644
--- a/vp8/encoder/firstpass.c
+++ b/vp8/encoder/firstpass.c
@@ -858,7 +858,9 @@ skip_motion_search:
      */
     if ((cm->current_video_frame > 0) &&
         (cpi->twopass.this_frame_stats.pcnt_inter > 0.20) &&
-        ((cpi->twopass.this_frame_stats.intra_error / cpi->twopass.this_frame_stats.coded_error) > 2.0))
+        ((cpi->twopass.this_frame_stats.intra_error /
+          DOUBLE_DIVIDE_CHECK(cpi->twopass.this_frame_stats.coded_error)) >
+         2.0))
     {
         vp8_yv12_copy_frame(lst_yv12, gld_yv12);
     }
diff --git a/vp9/encoder/vp9_firstpass.c b/vp9/encoder/vp9_firstpass.c
index db981754ee..ed944a7c85 100644
--- a/vp9/encoder/vp9_firstpass.c
+++ b/vp9/encoder/vp9_firstpass.c
@@ -749,7 +749,8 @@ void vp9_first_pass(VP9_COMP *cpi) {
       ((cm->current_video_frame > 0) &&
        (cpi->twopass.this_frame_stats->pcnt_inter > 0.20) &&
        ((cpi->twopass.this_frame_stats->intra_error /
-         cpi->twopass.this_frame_stats->coded_error) > 2.0))) {
+         DOUBLE_DIVIDE_CHECK(cpi->twopass.this_frame_stats->coded_error)) >
+        2.0))) {
     vp8_yv12_copy_frame(lst_yv12, gld_yv12);
     cpi->twopass.sr_update_lag = 1;
   } else
-- 
GitLab