Mercurial > emacs
comparison src/fns.c @ 20699:907d8633c8cc
(concat): Use unibyte_char_to_multibyte.
Fix lossage in installing previous patch.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Wed, 21 Jan 1998 21:43:30 +0000 |
parents | 64af046211eb |
children | d43ba5d91281 |
comparison
equal
deleted
inserted
replaced
20698:ec08780e4c42 | 20699:907d8633c8cc |
---|---|
471 if (this_len_byte > 1) | 471 if (this_len_byte > 1) |
472 some_multibyte = 1; | 472 some_multibyte = 1; |
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; |
480 } | 480 } |
481 else | 481 else |
570 } | 570 } |
571 else | 571 else |
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)) |
589 { | 581 { |
590 int size_in_chars | 582 int size_in_chars |