From b780f16953355e931a70f7b0fd666fa7f9dad795 Mon Sep 17 00:00:00 2001 From: Eli Zaretskii Date: Wed, 26 Apr 2017 15:09:12 +0300 Subject: [PATCH] Avoid segfaults when 'find-font' is invoked for a TTY frame * src/font.c (font_pixel_size): Don't call GUI functions if F is a text-mode frame. (Bug#26646) --- src/font.c | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/src/font.c b/src/font.c index dd6191b2b1f..5a3f271ef85 100644 --- a/src/font.c +++ b/src/font.c @@ -306,18 +306,20 @@ font_pixel_size (struct frame *f, Lisp_Object spec) return XINT (size); if (NILP (size)) return 0; - eassert (FLOATP (size)); - point_size = XFLOAT_DATA (size); - val = AREF (spec, FONT_DPI_INDEX); - if (INTEGERP (val)) - dpi = XINT (val); - else - dpi = FRAME_RES_Y (f); - pixel_size = POINT_TO_PIXEL (point_size, dpi); - return pixel_size; -#else - return 1; + if (FRAME_WINDOW_P (f)) + { + eassert (FLOATP (size)); + point_size = XFLOAT_DATA (size); + val = AREF (spec, FONT_DPI_INDEX); + if (INTEGERP (val)) + dpi = XINT (val); + else + dpi = FRAME_RES_Y (f); + pixel_size = POINT_TO_PIXEL (point_size, dpi); + return pixel_size; + } #endif + return 1; } -- 2.39.2