aboutsummaryrefslogtreecommitdiffstats
path: root/src/font.c
diff options
context:
space:
mode:
authorKenichi Handa2008-05-22 05:21:06 +0000
committerKenichi Handa2008-05-22 05:21:06 +0000
commit64b900e33e80ac10e247d2ef03b746c10e5d8ff4 (patch)
treedefd47a7fb42c61dac0763faf411f1eb43256bf6 /src/font.c
parenta368801ce640e7e00c6e8dcf3c71a75c270268f4 (diff)
downloademacs-64b900e33e80ac10e247d2ef03b746c10e5d8ff4.tar.gz
emacs-64b900e33e80ac10e247d2ef03b746c10e5d8ff4.zip
(font_prop_validate_style): Adjusted for the format
change of font_style_table.
Diffstat (limited to 'src/font.c')
-rw-r--r--src/font.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/font.c b/src/font.c
index 44c5aef9b90..84f2a2ac867 100644
--- a/src/font.c
+++ b/src/font.c
@@ -500,13 +500,16 @@ font_prop_validate_style (style, val)
500 if (INTEGERP (val)) 500 if (INTEGERP (val))
501 { 501 {
502 n = XINT (val); 502 n = XINT (val);
503 if ((n & 0xFF) 503 if (((n >> 4) & 0xF)
504 >= ASIZE (AREF (font_style_table, prop - FONT_WEIGHT_INDEX))) 504 >= ASIZE (AREF (font_style_table, prop - FONT_WEIGHT_INDEX)))
505 val = Qerror; 505 val = Qerror;
506 else 506 else
507 { 507 {
508 Lisp_Object elt = AREF (AREF (font_style_table, prop - FONT_WEIGHT_INDEX), n & 0xFF); 508 Lisp_Object elt = AREF (AREF (font_style_table, prop - FONT_WEIGHT_INDEX), (n >> 4) & 0xF);
509 if (XINT (XCDR (elt)) != (n >> 8)) 509
510 if ((n & 0xF) + 1 >= ASIZE (elt))
511 val = Qerror;
512 else if (XINT (AREF (elt, 0)) != (n >> 8))
510 val = Qerror; 513 val = Qerror;
511 } 514 }
512 } 515 }