emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] emacs/src ChangeLog nsfont.m


From: Adrian Robert
Subject: [Emacs-diffs] emacs/src ChangeLog nsfont.m
Date: Sun, 02 Aug 2009 15:37:10 +0000

CVSROOT:        /sources/emacs
Module name:    emacs
Changes by:     Adrian Robert <arobert> 09/08/02 15:37:09

Modified files:
        src            : ChangeLog nsfont.m 

Log message:
        * nsfont.m (ns_descriptor_to_entity): Handle case when descriptor has 
no family set. (nsfont_open): Handle case when entity has no family.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/emacs/src/ChangeLog?cvsroot=emacs&r1=1.7673&r2=1.7674
http://cvs.savannah.gnu.org/viewcvs/emacs/src/nsfont.m?cvsroot=emacs&r1=1.33&r2=1.34

Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/emacs/emacs/src/ChangeLog,v
retrieving revision 1.7673
retrieving revision 1.7674
diff -u -b -r1.7673 -r1.7674
--- ChangeLog   29 Jul 2009 16:03:12 -0000      1.7673
+++ ChangeLog   2 Aug 2009 15:37:07 -0000       1.7674
@@ -1,3 +1,9 @@
+2009-08-02  Adrian Robert  <address@hidden>
+
+       * nsfont.m (ns_descriptor_to_entity): Handle case when descriptor has
+       no family set.
+       (nsfont_open): Handle case when entity has no family.
+
 2009-07-29  Adrian Robert  <address@hidden>
 
        * nsfont.m (ns_findfonts): Fix 2009-07-24 change to return only one

Index: nsfont.m
===================================================================
RCS file: /sources/emacs/emacs/src/nsfont.m,v
retrieving revision 1.33
retrieving revision 1.34
diff -u -b -r1.33 -r1.34
--- nsfont.m    29 Jul 2009 16:03:14 -0000      1.33
+++ nsfont.m    2 Aug 2009 15:37:09 -0000       1.34
@@ -166,9 +166,16 @@
     Lisp_Object font_entity = font_make_entity ();
     /*   NSString *psName = [desc postscriptName]; */
     NSString *family = [desc objectForKey: NSFontFamilyAttribute];
-    char *escapedFamily = strdup ([family UTF8String]);
     unsigned int traits = [desc symbolicTraits];
+    char *escapedFamily;
 
+    /* Shouldn't happen, but on Tiger fallback desc gets name but no family. */
+    if (family == nil)
+      family = [desc objectForKey: NSFontNameAttribute];
+    if (family == nil)
+      family = [[NSFont userFixedPitchFontOfSize: 0] familyName];
+
+    escapedFamily = strdup ([family UTF8String]);
     ns_escape_name (escapedFamily);
 
     ASET (font_entity, FONT_TYPE_INDEX, Qns);
@@ -669,6 +676,8 @@
   synthItal = !NILP (tem) && !strncmp ("synthItal", SDATA (SYMBOL_NAME (tem)),
                                        9);
   family = ns_get_family (font_entity);
+  if (family == nil)
+    family = [[NSFont userFixedPitchFontOfSize: 0] familyName];
   /* Should be > 0.23 as some font descriptors (e.g. Terminus) set to that
      when setting family in ns_spec_to_descriptor(). */
   if (ns_attribute_fvalue (fontDesc, NSFontWeightTrait) > 0.50)




reply via email to

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