summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2022-06-21 11:06:38 -0700
committerMatthias Clasen <mclasen@redhat.com>2022-06-21 11:06:38 -0700
commit0edd33e9ddf8df1dab98bee5fdc7c4c3fd0d0c03 (patch)
tree89810375953cbaa86302bd4aef791e49ad646b8a
parent5156e4c7f837e757551f7e7c5710cd143df56ac0 (diff)
downloadpango-0edd33e9ddf8df1dab98bee5fdc7c4c3fd0d0c03.tar.gz
Avoid overflow when calculating caret slope
This showed up as wrong slopes with font size > 60.
-rw-r--r--pango/pango-layout.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/pango/pango-layout.c b/pango/pango-layout.c
index 2b03ee2c..165c6a7f 100644
--- a/pango/pango-layout.c
+++ b/pango/pango-layout.c
@@ -2729,7 +2729,7 @@ pango_layout_get_caret_pos (PangoLayout *layout,
return;
hb_font_get_scale (hb_font, &x_scale, &y_scale);
- slope_inv = (caret_run * y_scale) / (double) (caret_rise * x_scale);
+ slope_inv = (caret_run / (double) caret_rise) * (y_scale / (double) x_scale);
if (strong_pos)
{