]> git.eshelyaron.com Git - emacs.git/commitdiff
Avoid segfaults when 'find-font' is invoked for a TTY frame
authorEli Zaretskii <eliz@gnu.org>
Wed, 26 Apr 2017 12:09:12 +0000 (15:09 +0300)
committerEli Zaretskii <eliz@gnu.org>
Wed, 26 Apr 2017 12:09:12 +0000 (15:09 +0300)
* src/font.c (font_pixel_size): Don't call GUI functions if F is a
text-mode frame.  (Bug#26646)

src/font.c

index dd6191b2b1f1141e766e724fb304f1e3931a8360..5a3f271ef855dc6fc848bccf8aa2564671ac1813 100644 (file)
@@ -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;
 }