aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorKenichi Handa2002-05-22 03:50:34 +0000
committerKenichi Handa2002-05-22 03:50:34 +0000
commitb0a1e45efcc73a1c53b55b6b464b7de005d45dc8 (patch)
treeca11bf726b264d323c111ebbceceac59c69d7cba /src
parent6584daf11f0c8192e77086200509a2a9455828b2 (diff)
downloademacs-b0a1e45efcc73a1c53b55b6b464b7de005d45dc8.tar.gz
emacs-b0a1e45efcc73a1c53b55b6b464b7de005d45dc8.zip
(Fmake_char): Fix previous change.
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog4
-rw-r--r--src/charset.c55
2 files changed, 32 insertions, 27 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index a0565923cd7..20d05d47494 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,7 @@
12002-05-22 Kenichi Handa <handa@etl.go.jp>
2
3 * charset.c (Fmake_char): Fix previous change.
4
12002-05-21 Kenichi Handa <handa@etl.go.jp> 52002-05-21 Kenichi Handa <handa@etl.go.jp>
2 6
3 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars. 7 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
diff --git a/src/charset.c b/src/charset.c
index d7516dc1ba3..93ad3e8b61f 100644
--- a/src/charset.c
+++ b/src/charset.c
@@ -1502,44 +1502,45 @@ is specified. */)
1502 if (XFASTINT (code1) >= 0x100) 1502 if (XFASTINT (code1) >= 0x100)
1503 args_out_of_range (make_number (0xFF), code1); 1503 args_out_of_range (make_number (0xFF), code1);
1504 code = XFASTINT (code1); 1504 code = XFASTINT (code1);
1505 }
1506 if (dimension > 1)
1507 {
1508 code <<= 8;
1509 if (NILP (code2))
1510 code |= charsetp->code_space[(dimension - 2) * 4];
1511 else
1512 {
1513 CHECK_NATNUM (code2);
1514 if (XFASTINT (code2) >= 0x100)
1515 args_out_of_range (make_number (0xFF), code2);
1516 code |= XFASTINT (code2);
1517 }
1518 1505
1519 if (dimension > 2) 1506 if (dimension > 1)
1520 { 1507 {
1521 code <<= 8; 1508 code <<= 8;
1522 if (NILP (code3)) 1509 if (NILP (code2))
1523 code |= charsetp->code_space[(dimension - 3) * 4]; 1510 code |= charsetp->code_space[(dimension - 2) * 4];
1524 else 1511 else
1525 { 1512 {
1526 CHECK_NATNUM (code3); 1513 CHECK_NATNUM (code2);
1527 if (XFASTINT (code3) >= 0x100) 1514 if (XFASTINT (code2) >= 0x100)
1528 args_out_of_range (make_number (0xFF), code3); 1515 args_out_of_range (make_number (0xFF), code2);
1529 code |= XFASTINT (code3); 1516 code |= XFASTINT (code2);
1530 } 1517 }
1531 1518
1532 if (dimension > 3) 1519 if (dimension > 2)
1533 { 1520 {
1534 code <<= 8; 1521 code <<= 8;
1535 if (NILP (code4)) 1522 if (NILP (code3))
1536 code |= charsetp->code_space[0]; 1523 code |= charsetp->code_space[(dimension - 3) * 4];
1537 else 1524 else
1538 { 1525 {
1539 CHECK_NATNUM (code4); 1526 CHECK_NATNUM (code3);
1540 if (XFASTINT (code4) >= 0x100) 1527 if (XFASTINT (code3) >= 0x100)
1541 args_out_of_range (make_number (0xFF), code4); 1528 args_out_of_range (make_number (0xFF), code3);
1542 code |= XFASTINT (code4); 1529 code |= XFASTINT (code3);
1530 }
1531
1532 if (dimension > 3)
1533 {
1534 code <<= 8;
1535 if (NILP (code4))
1536 code |= charsetp->code_space[0];
1537 else
1538 {
1539 CHECK_NATNUM (code4);
1540 if (XFASTINT (code4) >= 0x100)
1541 args_out_of_range (make_number (0xFF), code4);
1542 code |= XFASTINT (code4);
1543 }
1543 } 1544 }
1544 } 1545 }
1545 } 1546 }