summaryrefslogtreecommitdiff
path: root/hwc/hwc.c
diff options
context:
space:
mode:
Diffstat (limited to 'hwc/hwc.c')
-rw-r--r--hwc/hwc.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/hwc/hwc.c b/hwc/hwc.c
index 74012dd..baae1c1 100644
--- a/hwc/hwc.c
+++ b/hwc/hwc.c
@@ -2054,8 +2054,15 @@ static int omap4_hwc_device_open(const hw_module_t* module, const char* name,
err = -errno;
goto done;
}
- hwc_dev->ext.lcd_xpy = (float) hwc_dev->fb_dis.width_in_mm / hwc_dev->fb_dis.timings.x_res /
- hwc_dev->fb_dis.height_in_mm * hwc_dev->fb_dis.timings.y_res;
+
+ if (hwc_dev->fb_dis.timings.x_res && hwc_dev->fb_dis.height_in_mm) {
+ hwc_dev->ext.lcd_xpy = (float)
+ hwc_dev->fb_dis.width_in_mm / hwc_dev->fb_dis.timings.x_res /
+ hwc_dev->fb_dis.height_in_mm * hwc_dev->fb_dis.timings.y_res;
+ } else {
+ ALOGE("x resolution or the height is not populated setting lcd_xpy to 1.0\n");
+ hwc_dev->ext.lcd_xpy = 1.0;
+ }
if (pipe(hwc_dev->pipe_fds) == -1) {
ALOGE("failed to event pipe (%d): %m", errno);