Mercurial > emacs
diff src/font.c @ 108004:9d210d83ed69
* font.c (syms_of_font): Make the style table vars read-only.
| author | Stefan Monnier <monnier@iro.umontreal.ca> |
|---|---|
| date | Tue, 20 Apr 2010 13:17:29 -0400 |
| parents | 26b234a2e901 |
| children | c34421dab75e |
line wrap: on
line diff
--- a/src/font.c Tue Apr 20 13:01:39 2010 -0400 +++ b/src/font.c Tue Apr 20 13:17:29 2010 -0400 @@ -5376,22 +5376,30 @@ gets the repertory information by an opened font and ENCODING. */); Vfont_encoding_alist = Qnil; + /* FIXME: These 3 vars are not quite what they appear: setq on them + won't have any effect other than disconnect them from the style + table used by the font display code. So we make them read-only, + to avoid this confusing situation. */ + DEFVAR_LISP_NOPRO ("font-weight-table", &Vfont_weight_table, doc: /* Vector of valid font weight values. Each element has the form: [NUMERIC-VALUE SYMBOLIC-NAME ALIAS-NAME ...] NUMERIC-VALUE is an integer, and SYMBOLIC-NAME and ALIAS-NAME are symbols. */); Vfont_weight_table = BUILD_STYLE_TABLE (weight_table); + XSYMBOL (intern_c_string ("font-weight-table"))->constant = 1; DEFVAR_LISP_NOPRO ("font-slant-table", &Vfont_slant_table, doc: /* Vector of font slant symbols vs the corresponding numeric values. See `font-weight-table' for the format of the vector. */); Vfont_slant_table = BUILD_STYLE_TABLE (slant_table); + XSYMBOL (intern_c_string ("font-slant-table"))->constant = 1; DEFVAR_LISP_NOPRO ("font-width-table", &Vfont_width_table, doc: /* Alist of font width symbols vs the corresponding numeric values. See `font-weight-table' for the format of the vector. */); Vfont_width_table = BUILD_STYLE_TABLE (width_table); + XSYMBOL (intern_c_string ("font-width-table"))->constant = 1; staticpro (&font_style_table); font_style_table = Fmake_vector (make_number (3), Qnil);
