Skip to content

Commit

Permalink
win32: check if GetTextMetrics failed
Browse files Browse the repository at this point in the history
  • Loading branch information
Patrick Fritzsch authored and Adrian Johnson committed Nov 13, 2015
1 parent 98d01cd commit ad99e1b
Showing 1 changed file with 8 additions and 2 deletions.
10 changes: 8 additions & 2 deletions src/win32/cairo-win32-font.c
Original file line number Diff line number Diff line change
Expand Up @@ -889,7 +889,7 @@ _cairo_win32_scaled_font_set_metrics (cairo_win32_scaled_font_t *scaled_font)
cairo_status_t status;
cairo_font_extents_t extents;

TEXTMETRIC metrics;
TEXTMETRIC metrics = {0};
HDC hdc;

hdc = _get_global_font_dc ();
Expand All @@ -902,8 +902,14 @@ _cairo_win32_scaled_font_set_metrics (cairo_win32_scaled_font_t *scaled_font)
status = cairo_win32_scaled_font_select_font (&scaled_font->base, hdc);
if (status)
return status;
GetTextMetrics (hdc, &metrics);

if (!GetTextMetrics (hdc, &metrics)) {
status = _cairo_win32_print_gdi_error ("_cairo_win32_scaled_font_set_metrics:GetTextMetrics");
}

cairo_win32_scaled_font_done_font (&scaled_font->base);
if (status)
return status;

extents.ascent = metrics.tmAscent / scaled_font->logical_scale;
extents.descent = metrics.tmDescent / scaled_font->logical_scale;
Expand Down

0 comments on commit ad99e1b

Please sign in to comment.