HWC: Use proper typecast to avoid scaling issues
Multiplying double with integer may scale up/down original value.
Change-Id: I2aa002a434d287df69d34de7e4fea3d56bcfbfaa
diff --git a/libhwcomposer/hwc_utils.cpp b/libhwcomposer/hwc_utils.cpp
index b8b7740..146730a 100644
--- a/libhwcomposer/hwc_utils.cpp
+++ b/libhwcomposer/hwc_utils.cpp
@@ -1061,10 +1061,10 @@
}
calc_cut(leftCutRatio, topCutRatio, rightCutRatio, bottomCutRatio, orient);
- crop_l += crop_w * leftCutRatio;
- crop_t += crop_h * topCutRatio;
- crop_r -= crop_w * rightCutRatio;
- crop_b -= crop_h * bottomCutRatio;
+ crop_l += (int)round((double)crop_w * leftCutRatio);
+ crop_t += (int)round((double)crop_h * topCutRatio);
+ crop_r -= (int)round((double)crop_w * rightCutRatio);
+ crop_b -= (int)round((double)crop_h * bottomCutRatio);
}
bool areLayersIntersecting(const hwc_layer_1_t* layer1,