1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-08 12:40:49 -08:00

(make_composition_value_copy): New function.

This commit is contained in:
Kenichi Handa 2000-07-04 07:36:58 +00:00
parent 78e7e8a045
commit c1361885c5

View file

@ -534,6 +534,31 @@ update_compositions (from, to, check_mask)
}
}
/* Modify composition property values in LIST destructively. LIST is
a list as returned from text_property_list. Change values to the
top-level copies of them so that none of them are `eq'. */
void
make_composition_value_copy (list)
Lisp_Object list;
{
Lisp_Object plist, val;
for (; CONSP (list); list = XCDR (list))
{
plist = XCAR (XCDR (XCDR (XCAR (list))));
while (CONSP (plist) && CONSP (XCDR (plist)))
{
if (EQ (XCAR (plist), Qcomposition)
&& (val = XCAR (XCDR (plist)), CONSP (val)))
XCAR (XCDR (plist)) = Fcons (XCAR (val), XCDR (val));
plist = XCDR (XCDR (plist));
}
}
}
/* Make text in the region between START and END a composition that
has COMPONENTS and MODIFICATION-FUNC.