Mercurial > emacs
comparison src/insdel.c @ 23929:869b3e83aa6b
(copy_text, count_size_as_multibyte): Don't convert 7-bit ASCII characters via
nonascii-translation-table.
author | Eli Zaretskii <eliz@gnu.org> |
---|---|
date | Mon, 21 Dec 1998 16:13:57 +0000 |
parents | 1a0fa0377fb3 |
children | 2eed8853546f |
comparison
equal
deleted
inserted
replaced
23928:b718a88bb2b1 | 23929:869b3e83aa6b |
---|---|
735 { | 735 { |
736 int c = *from_addr++; | 736 int c = *from_addr++; |
737 unsigned char workbuf[4], *str; | 737 unsigned char workbuf[4], *str; |
738 int len; | 738 int len; |
739 | 739 |
740 if ((c >= 0240 || !NILP (Vnonascii_translation_table)) && c < 0400) | 740 if (c < 0400 |
741 && (c >= 0240 | |
742 || (c >= 0200 && !NILP (Vnonascii_translation_table)))) | |
741 { | 743 { |
742 c = unibyte_char_to_multibyte (c); | 744 c = unibyte_char_to_multibyte (c); |
743 len = CHAR_STRING (c, workbuf, str); | 745 len = CHAR_STRING (c, workbuf, str); |
744 bcopy (str, to_addr, len); | 746 bcopy (str, to_addr, len); |
745 to_addr += len; | 747 to_addr += len; |
767 | 769 |
768 for (i = 0; i < nbytes; i++) | 770 for (i = 0; i < nbytes; i++) |
769 { | 771 { |
770 unsigned int c = *ptr++; | 772 unsigned int c = *ptr++; |
771 | 773 |
772 if (c < 0240 && NILP (Vnonascii_translation_table)) | 774 if (c < 0200 || (c < 0240 && NILP (Vnonascii_translation_table))) |
773 outgoing_nbytes++; | 775 outgoing_nbytes++; |
774 else | 776 else |
775 { | 777 { |
776 c = unibyte_char_to_multibyte (c); | 778 c = unibyte_char_to_multibyte (c); |
777 outgoing_nbytes += CHAR_BYTES (c); | 779 outgoing_nbytes += CHAR_BYTES (c); |