devilhorns pushed a commit to branch master.

commit 207ad636fe9220caba76c0bf4dc9a43385868eba
Author: Chris Michael <[email protected]>
Date:   Mon Jul 8 14:55:14 2013 +0100

    Avoid potential divide by zero error.
    
    NB: Fixes Coverity CID1039437and CID1039438
    
    Signed-off-by: Chris Michael <[email protected]>
---
 src/lib/ecore_x/xlib/ecore_x_randr.c | 14 ++++++++++++--
 1 file changed, 12 insertions(+), 2 deletions(-)

diff --git a/src/lib/ecore_x/xlib/ecore_x_randr.c 
b/src/lib/ecore_x/xlib/ecore_x_randr.c
index 934d910..4761732 100644
--- a/src/lib/ecore_x/xlib/ecore_x_randr.c
+++ b/src/lib/ecore_x/xlib/ecore_x_randr.c
@@ -646,9 +646,19 @@ ecore_x_randr_screen_current_size_set(Ecore_X_Window root, 
int w, int h, int w_m
         if (w <= 0) w = cw;
         if (h <= 0) h = ch;
         if (w_mm <= 0)
-          w_mm = (int)(((double)(cwmm / (double)cw)) * (double)w);
+          {
+             if ((double)cw > 0.0)
+               w_mm = (int)(((double)(cwmm / (double)cw)) * (double)w);
+             else
+               w_mm = (int)(((double)(cwmm)) * (double)w);
+          }
         if (h_mm <= 0)
-          h_mm = (int)(((double)(chmm / (double)ch)) * (double)h);
+          {
+             if ((double)ch > 0.0)
+               h_mm = (int)(((double)(chmm / (double)ch)) * (double)h);
+             else
+               h_mm = (int)(((double)(chmm)) * (double)h);
+          }
 
         /* tell XRandr to set screen size */
         XRRSetScreenSize(_ecore_x_disp, root, w, h, w_mm, h_mm);

-- 

------------------------------------------------------------------------------
This SF.net email is sponsored by Windows:

Build for Windows Store.

http://p.sf.net/sfu/windows-dev2dev

Reply via email to