aboutsummaryrefslogtreecommitdiffstats
path: root/src/charset.c
diff options
context:
space:
mode:
authorKenichi Handa <[email protected]>2000-06-10 00:12:46 +0000
committerKenichi Handa <[email protected]>2000-06-10 00:12:46 +0000
commitc83ef37172531109659f65f52e0893320d2c050e (patch)
tree1fef1fc7750bec2f01ab9fde02d379dd419b9ddc /src/charset.c
parent49b71c5ff1c47134413bd7177840da38c9d4cf9f (diff)
(update_charset_table): Update the table
bytes_by_char_head. (init_charset_once): Initialize elements of bytes_by_char_head to 1 except for leading codes for private charases.
Diffstat (limited to 'src/charset.c')
-rw-r--r--src/charset.c17
1 files changed, 5 insertions, 12 deletions
diff --git a/src/charset.c b/src/charset.c
index 9f3617622a..2c04743dac 100644
--- a/src/charset.c
+++ b/src/charset.c
@@ -497,11 +497,9 @@ update_charset_table (charset_id, dimension, chars, width, direction,
? LEADING_CODE_PRIVATE_21
: LEADING_CODE_PRIVATE_22)));
leading_code_ext = charset;
- }
-
- if (charset != CHARSET_ASCII && charset != CHARSET_8_BIT_GRAPHIC
- &&BYTES_BY_CHAR_HEAD (leading_code_base) != bytes)
- error ("Invalid dimension for the charset-ID %d", charset);
+ if (BYTES_BY_CHAR_HEAD (leading_code_base) != bytes)
+ error ("Invalid dimension for the charset-ID %d", charset);
+ }
CHARSET_TABLE_INFO (charset, CHARSET_ID_IDX) = charset_id;
CHARSET_TABLE_INFO (charset, CHARSET_BYTES_IDX) = make_number (bytes);
@@ -549,9 +547,10 @@ update_charset_table (charset_id, dimension, chars, width, direction,
= make_number (-1);
}
- if (charset != CHARSET_ASCII
+ if (charset != CHARSET_ASCII && charset != CHARSET_8_BIT_GRAPHIC
&& charset < MIN_CHARSET_PRIVATE_DIMENSION1)
{
+ bytes_by_char_head[leading_code_base] = bytes;
width_by_char_head[leading_code_base] = XINT (width);
/* Update table emacs_code_class. */
@@ -1570,12 +1569,6 @@ init_charset_once ()
for (i = 0; i < 256; i++)
bytes_by_char_head[i] = 1;
- for (i = 128; i < MIN_CHARSET_OFFICIAL_DIMENSION2; i++)
- bytes_by_char_head[i] = 2;
- for (; i <= MAX_CHARSET_OFFICIAL_DIMENSION2; i++)
- bytes_by_char_head[i] = 3;
- for (; i < 160; i++)
- bytes_by_char_head[i] = 2;
bytes_by_char_head[LEADING_CODE_PRIVATE_11] = 3;
bytes_by_char_head[LEADING_CODE_PRIVATE_12] = 3;
bytes_by_char_head[LEADING_CODE_PRIVATE_21] = 4;