Mercurial > emacs
comparison src/fns.c @ 30024:9fd285caeb51
(concat): While copying text properties, make each composition
property value a copy.
author | Kenichi Handa <handa@m17n.org> |
---|---|
date | Tue, 04 Jul 2000 07:38:15 +0000 |
parents | d9c85e2f07ba |
children | 4c2d8e4d00e0 |
comparison
equal
deleted
inserted
replaced
30023:ec25786e4705 | 30024:9fd285caeb51 |
---|---|
824 if (!NILP (prev)) | 824 if (!NILP (prev)) |
825 XCDR (prev) = last_tail; | 825 XCDR (prev) = last_tail; |
826 | 826 |
827 if (num_textprops > 0) | 827 if (num_textprops > 0) |
828 { | 828 { |
829 Lisp_Object props; | |
830 | |
829 for (argnum = 0; argnum < num_textprops; argnum++) | 831 for (argnum = 0; argnum < num_textprops; argnum++) |
830 { | 832 { |
831 this = args[textprops[argnum].argnum]; | 833 this = args[textprops[argnum].argnum]; |
832 copy_text_properties (make_number (textprops[argnum].from), | 834 props = text_property_list (this, |
833 make_number (XSTRING (this)->size), this, | 835 make_number (0), |
834 make_number (textprops[argnum].to), val, Qnil); | 836 make_number (XSTRING (this)->size), |
837 Qnil); | |
838 /* If successive arguments have properites, be sure that the | |
839 value of `composition' property be the copy. */ | |
840 if (argnum > 0 | |
841 && textprops[argnum - 1].argnum + 1 == textprops[argnum].argnum) | |
842 make_composition_value_copy (props); | |
843 add_text_properties_from_list (val, props, | |
844 make_number (textprops[argnum].to)); | |
835 } | 845 } |
836 } | 846 } |
837 return val; | 847 return val; |
838 } | 848 } |
839 | 849 |