diff options
author | Kenichi Handa <handa@m17n.org> | 2004-10-04 01:19:02 +0000 |
---|---|---|
committer | Kenichi Handa <handa@m17n.org> | 2004-10-04 01:19:02 +0000 |
commit | 41482d3650c49e1dc1333e49a7fcc226fe6fa29c (patch) | |
tree | a54904ce41fdfc685d0afff8a705504f2f75f64d | |
parent | d3857d85ab7e18b5dafdb6395e811bb566f8184b (diff) | |
download | emacs-41482d3650c49e1dc1333e49a7fcc226fe6fa29c.tar.gz emacs-41482d3650c49e1dc1333e49a7fcc226fe6fa29c.tar.bz2 emacs-41482d3650c49e1dc1333e49a7fcc226fe6fa29c.zip |
(read1): Fix reading of a char-table.
-rw-r--r-- | src/lread.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/lread.c b/src/lread.c index d3014eb7eb6..0634a4c7c30 100644 --- a/src/lread.c +++ b/src/lread.c @@ -2084,7 +2084,7 @@ read1 (readcharfun, pch, first_in_list) { Lisp_Object tmp; tmp = read_vector (readcharfun, 0); - if (XVECTOR (tmp)->size != VECSIZE (struct Lisp_Char_Table)) + if (XVECTOR (tmp)->size < VECSIZE (struct Lisp_Char_Table)) error ("Invalid size char-table"); XSETCHAR_TABLE (tmp, XCHAR_TABLE (tmp)); return tmp; @@ -2103,7 +2103,7 @@ read1 (readcharfun, pch, first_in_list) depth = XINT (AREF (tmp, 0)); if (depth < 1 || depth > 3) error ("Invalid depth in char-table"); - size = XVECTOR (tmp)->size + 2; + size = XVECTOR (tmp)->size - 2; if (chartab_size [depth] != size) error ("Invalid size char-table"); XSETSUB_CHAR_TABLE (tmp, XSUB_CHAR_TABLE (tmp)); |