emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/src/xfns.c,v


From: Chong Yidong
Subject: [Emacs-diffs] Changes to emacs/src/xfns.c,v
Date: Sun, 15 Jun 2008 19:42:54 +0000

CVSROOT:        /sources/emacs
Module name:    emacs
Changes by:     Chong Yidong <cyd>      08/06/15 19:42:53

Index: xfns.c
===================================================================
RCS file: /sources/emacs/emacs/src/xfns.c,v
retrieving revision 1.714
retrieving revision 1.715
diff -u -b -r1.714 -r1.715
--- xfns.c      15 Jun 2008 05:53:48 -0000      1.714
+++ xfns.c      15 Jun 2008 19:42:53 -0000      1.715
@@ -5645,8 +5645,8 @@
      Lisp_Object frame, ignored;
 {
   FRAME_PTR f = check_x_frame (frame);
-  char *fontname;
-  Lisp_Object font = Qnil;
+  char *name;
+  Lisp_Object default_font, font = Qnil;
   int count = SPECPDL_INDEX ();
 
   check_x ();
@@ -5660,12 +5660,21 @@
 
   BLOCK_INPUT;
 
-  fontname = xg_get_font_name (f, NULL);
+  XSETFONT (default_font, FRAME_FONT (f));
+  if (FONTP (default_font))
+    {
+      char *default_name = alloca (256);
+      if (font_unparse_gtkname (default_font, f, default_name, 256) < 0)
+       default_name = NULL;
+      name = xg_get_font_name (f, default_name);
+    }
+  else
+    name = xg_get_font_name (f, NULL);
 
-  if (fontname)
+  if (name)
     {
-      font = build_string (fontname);
-      xfree (fontname);
+      font = build_string (name);
+      xfree (name);
     }
 
   UNBLOCK_INPUT;




reply via email to

[Prev in Thread] Current Thread [Next in Thread]