Currently, the text property face is always set to a list, even if there is only one face. This is technically correct, but inefficient, since it creates unnecessary cons cells, which increase GC pressure.
Additionally, it affects packages that incorrectly assumes face to be a singleton (like flyspell; see #168).
With this change, face is not set to a list until there is more than one face.
Currently, the text property
face
is always set to a list, even if there is only one face. This is technically correct, but inefficient, since it creates unnecessary cons cells, which increase GC pressure.Additionally, it affects packages that incorrectly assumes
face
to be a singleton (likeflyspell
; see #168).With this change,
face
is not set to a list until there is more than one face.