aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorPaul Eggert2011-04-10 22:58:27 -0700
committerPaul Eggert2011-04-10 22:58:27 -0700
commit9247002884de0c64febb0807db428088800c39ff (patch)
treef96de259de91109b0999e3b4b3a31691346ada9a /src
parent244ed9077fe7ccebbc15c7157cb45832f46a46d3 (diff)
downloademacs-9247002884de0c64febb0807db428088800c39ff.tar.gz
emacs-9247002884de0c64febb0807db428088800c39ff.zip
font.c: Make copy_font_spec and merge_font_spec ordinary C functions.
* font.c (copy_font_spec): Rename from Fcopy_font_spec, since it was inaccessible from Lisp. (merge_font_spec): Likewise, renaming from Fmerge_font_spec. * font.c, font.h, fontset.c, xfaces.c, xfont.c: Change all uses.
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog6
-rw-r--r--src/font.c30
-rw-r--r--src/font.h4
-rw-r--r--src/fontset.c4
-rw-r--r--src/xfaces.c6
-rw-r--r--src/xfont.c2
6 files changed, 29 insertions, 23 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 43358338c4d..a794eb9eb90 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,5 +1,11 @@
12011-04-11 Paul Eggert <eggert@cs.ucla.edu> 12011-04-11 Paul Eggert <eggert@cs.ucla.edu>
2 2
3 font.c: Make copy_font_spec and merge_font_spec ordinary C functions.
4 * font.c (copy_font_spec): Rename from Fcopy_font_spec, since it
5 was inaccessible from Lisp.
6 (merge_font_spec): Likewise, renaming from Fmerge_font_spec.
7 * font.c, font.h, fontset.c, xfaces.c, xfont.c: Change all uses.
8
3 alloc.c: Import and export fewer symbols, and remove unused items. 9 alloc.c: Import and export fewer symbols, and remove unused items.
4 * lisp.h (suppress_checking, die): Declare only if ENABLE_CHECKING 10 * lisp.h (suppress_checking, die): Declare only if ENABLE_CHECKING
5 is defined. 11 is defined.
diff --git a/src/font.c b/src/font.c
index 91cb0a2d52b..ace1b8442d4 100644
--- a/src/font.c
+++ b/src/font.c
@@ -2727,7 +2727,7 @@ font_list_entities (Lisp_Object frame, Lisp_Object spec)
2727 val = null_vector; 2727 val = null_vector;
2728 else 2728 else
2729 val = Fvconcat (1, &val); 2729 val = Fvconcat (1, &val);
2730 copy = Fcopy_font_spec (scratch_font_spec); 2730 copy = copy_font_spec (scratch_font_spec);
2731 ASET (copy, FONT_TYPE_INDEX, driver_list->driver->type); 2731 ASET (copy, FONT_TYPE_INDEX, driver_list->driver->type);
2732 XSETCDR (cache, Fcons (Fcons (copy, val), XCDR (cache))); 2732 XSETCDR (cache, Fcons (Fcons (copy, val), XCDR (cache)));
2733 } 2733 }
@@ -2755,7 +2755,7 @@ font_matching_entity (FRAME_PTR f, Lisp_Object *attrs, Lisp_Object spec)
2755 struct font_driver_list *driver_list = f->font_driver_list; 2755 struct font_driver_list *driver_list = f->font_driver_list;
2756 Lisp_Object ftype, size, entity; 2756 Lisp_Object ftype, size, entity;
2757 Lisp_Object frame; 2757 Lisp_Object frame;
2758 Lisp_Object work = Fcopy_font_spec (spec); 2758 Lisp_Object work = copy_font_spec (spec);
2759 2759
2760 XSETFRAME (frame, f); 2760 XSETFRAME (frame, f);
2761 ftype = AREF (spec, FONT_TYPE_INDEX); 2761 ftype = AREF (spec, FONT_TYPE_INDEX);
@@ -2782,7 +2782,7 @@ font_matching_entity (FRAME_PTR f, Lisp_Object *attrs, Lisp_Object spec)
2782 else 2782 else
2783 { 2783 {
2784 entity = driver_list->driver->match (frame, work); 2784 entity = driver_list->driver->match (frame, work);
2785 copy = Fcopy_font_spec (work); 2785 copy = copy_font_spec (work);
2786 ASET (copy, FONT_TYPE_INDEX, driver_list->driver->type); 2786 ASET (copy, FONT_TYPE_INDEX, driver_list->driver->type);
2787 XSETCDR (cache, Fcons (Fcons (copy, entity), XCDR (cache))); 2787 XSETCDR (cache, Fcons (Fcons (copy, entity), XCDR (cache)));
2788 } 2788 }
@@ -2976,7 +2976,7 @@ font_clear_prop (Lisp_Object *attrs, enum font_property_index prop)
2976 2976
2977 if (! NILP (Ffont_get (font, QCname))) 2977 if (! NILP (Ffont_get (font, QCname)))
2978 { 2978 {
2979 font = Fcopy_font_spec (font); 2979 font = copy_font_spec (font);
2980 font_put_extra (font, QCname, Qnil); 2980 font_put_extra (font, QCname, Qnil);
2981 } 2981 }
2982 2982
@@ -2987,7 +2987,7 @@ font_clear_prop (Lisp_Object *attrs, enum font_property_index prop)
2987 && prop != FONT_SIZE_INDEX) 2987 && prop != FONT_SIZE_INDEX)
2988 return; 2988 return;
2989 if (EQ (font, attrs[LFACE_FONT_INDEX])) 2989 if (EQ (font, attrs[LFACE_FONT_INDEX]))
2990 font = Fcopy_font_spec (font); 2990 font = copy_font_spec (font);
2991 ASET (font, prop, Qnil); 2991 ASET (font, prop, Qnil);
2992 if (prop == FONT_FAMILY_INDEX || prop == FONT_FOUNDRY_INDEX) 2992 if (prop == FONT_FAMILY_INDEX || prop == FONT_FOUNDRY_INDEX)
2993 { 2993 {
@@ -3098,7 +3098,7 @@ font_find_for_lface (FRAME_PTR f, Lisp_Object *attrs, Lisp_Object spec, int c)
3098 return Qnil; 3098 return Qnil;
3099 } 3099 }
3100 3100
3101 work = Fcopy_font_spec (spec); 3101 work = copy_font_spec (spec);
3102 ASET (work, FONT_TYPE_INDEX, AREF (spec, FONT_TYPE_INDEX)); 3102 ASET (work, FONT_TYPE_INDEX, AREF (spec, FONT_TYPE_INDEX));
3103 XSETFRAME (frame, f); 3103 XSETFRAME (frame, f);
3104 pixel_size = font_pixel_size (f, spec); 3104 pixel_size = font_pixel_size (f, spec);
@@ -3868,9 +3868,9 @@ usage: (font-spec ARGS...) */)
3868 return spec; 3868 return spec;
3869} 3869}
3870 3870
3871DEFUE ("copy-font-spec", Fcopy_font_spec, Scopy_font_spec, 1, 1, 0, 3871/* Return a copy of FONT as a font-spec. */
3872 doc: /* Return a copy of FONT as a font-spec. */) 3872Lisp_Object
3873 (Lisp_Object font) 3873copy_font_spec (Lisp_Object font)
3874{ 3874{
3875 Lisp_Object new_spec, tail, prev, extra; 3875 Lisp_Object new_spec, tail, prev, extra;
3876 int i; 3876 int i;
@@ -3894,18 +3894,18 @@ DEFUE ("copy-font-spec", Fcopy_font_spec, Scopy_font_spec, 1, 1, 0,
3894 return new_spec; 3894 return new_spec;
3895} 3895}
3896 3896
3897DEFUE ("merge-font-spec", Fmerge_font_spec, Smerge_font_spec, 2, 2, 0, 3897/* Merge font-specs FROM and TO, and return a new font-spec.
3898 doc: /* Merge font-specs FROM and TO, and return a new font-spec. 3898 Every specified property in FROM overrides the corresponding
3899Every specified properties in FROM override the corresponding 3899 property in TO. */
3900properties in TO. */) 3900Lisp_Object
3901 (Lisp_Object from, Lisp_Object to) 3901merge_font_spec (Lisp_Object from, Lisp_Object to)
3902{ 3902{
3903 Lisp_Object extra, tail; 3903 Lisp_Object extra, tail;
3904 int i; 3904 int i;
3905 3905
3906 CHECK_FONT (from); 3906 CHECK_FONT (from);
3907 CHECK_FONT (to); 3907 CHECK_FONT (to);
3908 to = Fcopy_font_spec (to); 3908 to = copy_font_spec (to);
3909 for (i = 0; i < FONT_EXTRA_INDEX; i++) 3909 for (i = 0; i < FONT_EXTRA_INDEX; i++)
3910 ASET (to, i, AREF (from, i)); 3910 ASET (to, i, AREF (from, i));
3911 extra = AREF (to, FONT_EXTRA_INDEX); 3911 extra = AREF (to, FONT_EXTRA_INDEX);
diff --git a/src/font.h b/src/font.h
index a9b58eb7c76..ead5223a6cb 100644
--- a/src/font.h
+++ b/src/font.h
@@ -737,8 +737,8 @@ struct font_data_list
737}; 737};
738 738
739EXFUN (Ffont_spec, MANY); 739EXFUN (Ffont_spec, MANY);
740EXFUN (Fcopy_font_spec, 1); 740extern Lisp_Object copy_font_spec (Lisp_Object);
741EXFUN (Fmerge_font_spec, 2); 741extern Lisp_Object merge_font_spec (Lisp_Object, Lisp_Object);
742EXFUN (Ffont_get, 2); 742EXFUN (Ffont_get, 2);
743EXFUN (Ffont_put, 3); 743EXFUN (Ffont_put, 3);
744EXFUN (Flist_fonts, 4); 744EXFUN (Flist_fonts, 4);
diff --git a/src/fontset.c b/src/fontset.c
index 4a9cc9393bf..c8452979eee 100644
--- a/src/fontset.c
+++ b/src/fontset.c
@@ -1709,7 +1709,7 @@ int
1709fontset_from_font (Lisp_Object font_object) 1709fontset_from_font (Lisp_Object font_object)
1710{ 1710{
1711 Lisp_Object font_name = font_get_name (font_object); 1711 Lisp_Object font_name = font_get_name (font_object);
1712 Lisp_Object font_spec = Fcopy_font_spec (font_object); 1712 Lisp_Object font_spec = copy_font_spec (font_object);
1713 Lisp_Object registry = AREF (font_spec, FONT_REGISTRY_INDEX); 1713 Lisp_Object registry = AREF (font_spec, FONT_REGISTRY_INDEX);
1714 Lisp_Object fontset_spec, alias, name, fontset; 1714 Lisp_Object fontset_spec, alias, name, fontset;
1715 Lisp_Object val; 1715 Lisp_Object val;
@@ -1726,7 +1726,7 @@ fontset_from_font (Lisp_Object font_object)
1726 sprintf (temp, "fontset-auto%d", num_auto_fontsets - 1); 1726 sprintf (temp, "fontset-auto%d", num_auto_fontsets - 1);
1727 alias = intern (temp); 1727 alias = intern (temp);
1728 } 1728 }
1729 fontset_spec = Fcopy_font_spec (font_spec); 1729 fontset_spec = copy_font_spec (font_spec);
1730 ASET (fontset_spec, FONT_REGISTRY_INDEX, alias); 1730 ASET (fontset_spec, FONT_REGISTRY_INDEX, alias);
1731 name = Ffont_xlfd_name (fontset_spec, Qnil); 1731 name = Ffont_xlfd_name (fontset_spec, Qnil);
1732 if (NILP (name)) 1732 if (NILP (name))
diff --git a/src/xfaces.c b/src/xfaces.c
index 920debf4dba..83f4268ad1e 100644
--- a/src/xfaces.c
+++ b/src/xfaces.c
@@ -1793,7 +1793,7 @@ the WIDTH times as wide as FACE on FRAME. */)
1793 { 1793 {
1794 /* This is a scalable font. For backward compatibility, 1794 /* This is a scalable font. For backward compatibility,
1795 we set the specified size. */ 1795 we set the specified size. */
1796 font_entity = Fcopy_font_spec (font_entity); 1796 font_entity = copy_font_spec (font_entity);
1797 ASET (font_entity, FONT_SIZE_INDEX, 1797 ASET (font_entity, FONT_SIZE_INDEX,
1798 AREF (font_spec, FONT_SIZE_INDEX)); 1798 AREF (font_spec, FONT_SIZE_INDEX));
1799 } 1799 }
@@ -2317,9 +2317,9 @@ merge_face_vectors (struct frame *f, Lisp_Object *from, Lisp_Object *to, struct
2317 if (!UNSPECIFIEDP (from[i])) 2317 if (!UNSPECIFIEDP (from[i]))
2318 { 2318 {
2319 if (!UNSPECIFIEDP (to[i])) 2319 if (!UNSPECIFIEDP (to[i]))
2320 to[i] = Fmerge_font_spec (from[i], to[i]); 2320 to[i] = merge_font_spec (from[i], to[i]);
2321 else 2321 else
2322 to[i] = Fcopy_font_spec (from[i]); 2322 to[i] = copy_font_spec (from[i]);
2323 if (! NILP (AREF (to[i], FONT_FOUNDRY_INDEX))) 2323 if (! NILP (AREF (to[i], FONT_FOUNDRY_INDEX)))
2324 to[LFACE_FOUNDRY_INDEX] = SYMBOL_NAME (AREF (to[i], FONT_FOUNDRY_INDEX)); 2324 to[LFACE_FOUNDRY_INDEX] = SYMBOL_NAME (AREF (to[i], FONT_FOUNDRY_INDEX));
2325 if (! NILP (AREF (to[i], FONT_FAMILY_INDEX))) 2325 if (! NILP (AREF (to[i], FONT_FAMILY_INDEX)))
diff --git a/src/xfont.c b/src/xfont.c
index eaa1a3ea59b..5dd6aae3846 100644
--- a/src/xfont.c
+++ b/src/xfont.c
@@ -739,7 +739,7 @@ xfont_open (FRAME_PTR f, Lisp_Object entity, int pixel_size)
739 So, we try again with wildcards in RESX and RESY. */ 739 So, we try again with wildcards in RESX and RESY. */
740 Lisp_Object temp; 740 Lisp_Object temp;
741 741
742 temp = Fcopy_font_spec (entity); 742 temp = copy_font_spec (entity);
743 ASET (temp, FONT_DPI_INDEX, Qnil); 743 ASET (temp, FONT_DPI_INDEX, Qnil);
744 len = font_unparse_xlfd (temp, pixel_size, name, 512); 744 len = font_unparse_xlfd (temp, pixel_size, name, 512);
745 if (len <= 0 || (len = xfont_encode_coding_xlfd (name)) < 0) 745 if (len <= 0 || (len = xfont_encode_coding_xlfd (name)) < 0)