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