aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorKenichi Handa2009-07-28 02:09:52 +0000
committerKenichi Handa2009-07-28 02:09:52 +0000
commit087048cd5d94bd63dd71ed36fb79f0388275cf6e (patch)
treeee8eaaf5eb5b8b61559e2030a7c3f0797275ba37 /src
parent4fa58085e38a947ebdd0e9e8e505f23ea2aaecbd (diff)
downloademacs-087048cd5d94bd63dd71ed36fb79f0388275cf6e.tar.gz
emacs-087048cd5d94bd63dd71ed36fb79f0388275cf6e.zip
(font_parse_xlfd): Check DPI and AVGWIDTH properties more rigidly.
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog8
-rw-r--r--src/font.c11
2 files changed, 16 insertions, 3 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 4dd53f21981..523f19ff0c0 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,11 @@
12009-07-28 Kenichi Handa <handa@m17n.org>
2
3 * font.c (font_parse_xlfd): Check DPI and AVGWIDTH properties more
4 rigidly.
5
6 * xfont.c (xfont_list_pattern): Don't ignore the return value of
7 font_parse_xlfd. Check font properties more rigidly.
8
12009-07-27 Dan Nicolaescu <dann@ics.uci.edu> 92009-07-27 Dan Nicolaescu <dann@ics.uci.edu>
2 10
3 * s/netbsd.h (SIGNALS_VIA_CHARACTERS): Remove, already defined in bsd-common.h 11 * s/netbsd.h (SIGNALS_VIA_CHARACTERS): Remove, already defined in bsd-common.h
diff --git a/src/font.c b/src/font.c
index d2cd1febe93..cfc48523d12 100644
--- a/src/font.c
+++ b/src/font.c
@@ -1139,7 +1139,10 @@ font_parse_xlfd (name, font)
1139 } 1139 }
1140 } 1140 }
1141 1141
1142 ASET (font, FONT_DPI_INDEX, INTERN_FIELD (XLFD_RESY_INDEX)); 1142 val = INTERN_FIELD (XLFD_RESY_INDEX);
1143 if (! NILP (val) && ! INTEGERP (val))
1144 return -1;
1145 ASET (font, FONT_DPI_INDEX, val);
1143 val = INTERN_FIELD (XLFD_SPACING_INDEX); 1146 val = INTERN_FIELD (XLFD_SPACING_INDEX);
1144 if (! NILP (val)) 1147 if (! NILP (val))
1145 { 1148 {
@@ -1151,8 +1154,10 @@ font_parse_xlfd (name, font)
1151 p = f[XLFD_AVGWIDTH_INDEX]; 1154 p = f[XLFD_AVGWIDTH_INDEX];
1152 if (*p == '~') 1155 if (*p == '~')
1153 p++; 1156 p++;
1154 ASET (font, FONT_AVGWIDTH_INDEX, 1157 val = font_intern_prop (p, f[XLFD_REGISTRY_INDEX] - 1 - p, 0);
1155 font_intern_prop (p, f[XLFD_REGISTRY_INDEX] - 1 - p, 0)); 1158 if (! NILP (val) && ! INTEGERP (val))
1159 return -1;
1160 ASET (font, FONT_AVGWIDTH_INDEX, val);
1156 } 1161 }
1157 else 1162 else
1158 { 1163 {