aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorRichard M. Stallman1998-01-21 21:43:30 +0000
committerRichard M. Stallman1998-01-21 21:43:30 +0000
commit06f57aa7fd6d9c56f81c10a42d300dfff6d438bf (patch)
treed167a43df3fa9b7b5187f6848d5cc7982cb009b8 /src
parentd0628b063d09fcaa984c549e4d4ae58500230c8c (diff)
downloademacs-06f57aa7fd6d9c56f81c10a42d300dfff6d438bf.tar.gz
emacs-06f57aa7fd6d9c56f81c10a42d300dfff6d438bf.zip
(concat): Use unibyte_char_to_multibyte.
Fix lossage in installing previous patch.
Diffstat (limited to 'src')
-rw-r--r--src/fns.c16
1 files changed, 4 insertions, 12 deletions
diff --git a/src/fns.c b/src/fns.c
index eb2c2cbcbc0..64c6778aea4 100644
--- a/src/fns.c
+++ b/src/fns.c
@@ -473,7 +473,7 @@ concat (nargs, args, target_type, last_special)
473 } 473 }
474 else if (STRINGP (this)) 474 else if (STRINGP (this))
475 { 475 {
476 result_len_byte += XSTRING (this)->size_byte; 476 if (STRING_MULTIBYTE (this))
477 { 477 {
478 some_multibyte = 1; 478 some_multibyte = 1;
479 result_len_byte += XSTRING (this)->size_byte; 479 result_len_byte += XSTRING (this)->size_byte;
@@ -572,17 +572,9 @@ concat (nargs, args, target_type, last_special)
572 { 572 {
573 unsigned char c; 573 unsigned char c;
574 XSETFASTINT (elt, XSTRING (this)->data[thisindex++]); 574 XSETFASTINT (elt, XSTRING (this)->data[thisindex++]);
575 if (some_multibyte && XINT (elt) >= 0200 575 if (some_multibyte)
576 && XINT (elt) < 0400) 576 XSETINT (elt,
577 { 577 unibyte_char_to_multibyte (XINT (elt)));
578 c = XINT (elt);
579 if (nonascii_insert_offset > 0)
580 c += nonascii_insert_offset;
581 else
582 c += DEFAULT_NONASCII_INSERT_OFFSET;
583
584 XSETINT (elt, c);
585 }
586 } 578 }
587 } 579 }
588 else if (BOOL_VECTOR_P (this)) 580 else if (BOOL_VECTOR_P (this))