From: Eli Zaretskii Date: Wed, 26 Apr 2017 12:09:12 +0000 (+0300) Subject: Avoid segfaults when 'find-font' is invoked for a TTY frame X-Git-Tag: emacs-26.0.90~521^2~545 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=b780f16953355e931a70f7b0fd666fa7f9dad795;p=emacs.git 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) --- 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; }