aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorKenichi Handa2000-06-10 00:13:13 +0000
committerKenichi Handa2000-06-10 00:13:13 +0000
commit88b837a212a031aa9bfce585e4fcf5d0a38f6867 (patch)
treee273ad388c40d235e9ee515f2f763a9c178538f0 /src
parentc83ef37172531109659f65f52e0893320d2c050e (diff)
downloademacs-88b837a212a031aa9bfce585e4fcf5d0a38f6867.tar.gz
emacs-88b837a212a031aa9bfce585e4fcf5d0a38f6867.zip
(CHARSET_8_BIT_GRAPHIC): Define as 0x80.
(UNIBYTE_STR_AS_MULTIBYTE_P): Fix for an invalid multibyte sequence.
Diffstat (limited to 'src')
-rw-r--r--src/charset.h16
1 files changed, 9 insertions, 7 deletions
diff --git a/src/charset.h b/src/charset.h
index 60cd120897c..c64d280b90f 100644
--- a/src/charset.h
+++ b/src/charset.h
@@ -66,14 +66,14 @@ Boston, MA 02111-1307, USA. */
66 0x00 official dim1 -- none -- -- none -- 66 0x00 official dim1 -- none -- -- none --
67 (ASCII) 67 (ASCII)
68 0x01..0x7F --never used-- 68 0x01..0x7F --never used--
69 0x80 --never used-- 69 0x80 official dim1 -- none -- -- none --
70 (eight-bit-graphic)
70 0x81..0x8F official dim1 same as charset -- none -- 71 0x81..0x8F official dim1 same as charset -- none --
71 0x90..0x99 official dim2 same as charset -- none -- 72 0x90..0x99 official dim2 same as charset -- none --
72 0x9A..0x9D --never used-- 73 0x9A..0x9D --never used--
73 0x9E official dim1 same as charset -- none -- 74 0x9E official dim1 same as charset -- none --
74 (eight-bit-control) 75 (eight-bit-control)
75 0x9F official dim1 -- none -- -- none -- 76 0x9F --never used--
76 (eight-bit-graphic)
77 0xA0..0xDF private dim1 0x9A same as charset 77 0xA0..0xDF private dim1 0x9A same as charset
78 of 1-column width 78 of 1-column width
79 0xE0..0xEF private dim1 0x9B same as charset 79 0xE0..0xEF private dim1 0x9B same as charset
@@ -119,7 +119,7 @@ Boston, MA 02111-1307, USA. */
119/* Definition of special charsets. */ 119/* Definition of special charsets. */
120#define CHARSET_ASCII 0 /* 0x00..0x7F */ 120#define CHARSET_ASCII 0 /* 0x00..0x7F */
121#define CHARSET_8_BIT_CONTROL 0x9E /* 0x80..0x9F */ 121#define CHARSET_8_BIT_CONTROL 0x9E /* 0x80..0x9F */
122#define CHARSET_8_BIT_GRAPHIC 0x9F /* 0xA0..0xFF */ 122#define CHARSET_8_BIT_GRAPHIC 0x80 /* 0xA0..0xFF */
123 123
124extern int charset_latin_iso8859_1; /* ISO8859-1 (Latin-1) */ 124extern int charset_latin_iso8859_1; /* ISO8859-1 (Latin-1) */
125extern int charset_jisx0208_1978; /* JISX0208.1978 (Japanese Kanji old set) */ 125extern int charset_jisx0208_1978; /* JISX0208.1978 (Japanese Kanji old set) */
@@ -443,14 +443,16 @@ extern int width_by_char_head[256];
443 set to the byte length of the multibyte form. */ 443 set to the byte length of the multibyte form. */
444 444
445#define UNIBYTE_STR_AS_MULTIBYTE_P(str, length, bytes) \ 445#define UNIBYTE_STR_AS_MULTIBYTE_P(str, length, bytes) \
446 (((bytes) = BYTES_BY_CHAR_HEAD ((str)[0])) == 1 \ 446 (((str)[0] < 0x80 || (str)[0] >= 0xA0) \
447 || ((str)[0] != LEADING_CODE_8_BIT_CONTROL \ 447 ? (bytes) = 1 \
448 : (((bytes) = BYTES_BY_CHAR_HEAD ((str)[0])), \
449 ((str)[0] != LEADING_CODE_8_BIT_CONTROL \
448 && (bytes) <= (length) \ 450 && (bytes) <= (length) \
449 && !CHAR_HEAD_P ((str)[1]) \ 451 && !CHAR_HEAD_P ((str)[1]) \
450 && ((bytes) == 2 \ 452 && ((bytes) == 2 \
451 || (!CHAR_HEAD_P ((str)[2]) \ 453 || (!CHAR_HEAD_P ((str)[2]) \
452 && ((bytes) == 3 \ 454 && ((bytes) == 3 \
453 || !CHAR_HEAD_P ((str)[3])))))) 455 || !CHAR_HEAD_P ((str)[3])))))))
454 456
455/* Return 1 iff the byte sequence at multibyte string STR is valid as 457/* Return 1 iff the byte sequence at multibyte string STR is valid as
456 a unibyte form. By a side effect, BYTES is set to the byte length 458 a unibyte form. By a side effect, BYTES is set to the byte length