diff options
| -rw-r--r-- | src/category.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/category.c b/src/category.c index c31c1961e04..91b015d5868 100644 --- a/src/category.c +++ b/src/category.c | |||
| @@ -195,8 +195,12 @@ static void | |||
| 195 | copy_category_entry (table, range, val) | 195 | copy_category_entry (table, range, val) |
| 196 | Lisp_Object table, range, val; | 196 | Lisp_Object table, range, val; |
| 197 | { | 197 | { |
| 198 | char_table_set_range (table, XINT (XCAR (range)), XINT (XCDR (range)), | 198 | val = Fcopy_sequence (val); |
| 199 | Fcopy_sequence (val)); | 199 | if (CONSP (range)) |
| 200 | char_table_set_range (table, XINT (XCAR (range)), XINT (XCDR (range)), | ||
| 201 | val); | ||
| 202 | else | ||
| 203 | char_table_set (table, XINT (range), val); | ||
| 200 | } | 204 | } |
| 201 | 205 | ||
| 202 | /* Return a copy of category table TABLE. We can't simply use the | 206 | /* Return a copy of category table TABLE. We can't simply use the |