Commit c1dbe028 authored by Jimmy Aguilar Mena's avatar Jimmy Aguilar Mena

Fixed extend face filtered for prop.

parent 28655de4
...@@ -4106,17 +4106,12 @@ handle_fontified_prop (struct it *it) ...@@ -4106,17 +4106,12 @@ handle_fontified_prop (struct it *it)
***********************************************************************/ ***********************************************************************/
static enum prop_handled static enum prop_handled
handle_face_prop_general (struct it *it, handle_face_prop_general (struct it *it, int *face_id_ptr,
enum lface_attribute_index attr_filter) enum lface_attribute_index attr_filter)
{ {
int new_face_id, *face_id_ptr; int new_face_id;
ptrdiff_t next_stop; ptrdiff_t next_stop;
if (attr_filter == LFACE_EXTEND_INDEX)
face_id_ptr = &(it->extend_face_id);
else
face_id_ptr = &(it->face_id);
if (!STRINGP (it->string)) if (!STRINGP (it->string))
{ {
new_face_id new_face_id
...@@ -4270,7 +4265,7 @@ handle_face_prop_general (struct it *it, ...@@ -4270,7 +4265,7 @@ handle_face_prop_general (struct it *it,
static enum prop_handled static enum prop_handled
handle_face_prop (struct it *it) handle_face_prop (struct it *it)
{ {
return handle_face_prop_general (it, 0); return handle_face_prop_general (it, &(it->face_id), 0);
} }
...@@ -20508,7 +20503,7 @@ extend_face_to_end_of_line (struct it *it) ...@@ -20508,7 +20503,7 @@ extend_face_to_end_of_line (struct it *it)
|| WINDOW_RIGHT_MARGIN_WIDTH (it->w) > 0)) || WINDOW_RIGHT_MARGIN_WIDTH (it->w) > 0))
return; return;
handle_face_prop_general (it, LFACE_EXTEND_INDEX); handle_face_prop_general (it, &(it->extend_face_id), LFACE_EXTEND_INDEX);
/* Face extension extends the background and box of IT->extend_face_id /* Face extension extends the background and box of IT->extend_face_id
to the end of the line. If the background equals the background to the end of the line. If the background equals the background
...@@ -6129,11 +6129,11 @@ face_at_buffer_position (struct window *w, ptrdiff_t pos, ...@@ -6129,11 +6129,11 @@ face_at_buffer_position (struct window *w, ptrdiff_t pos,
} }
/* Begin with attributes from the default face. */ /* Begin with attributes from the default face. */
memcpy (attrs, default_face->lface, sizeof attrs); memcpy (attrs, default_face->lface, sizeof(attrs));
/* Merge in attributes specified via text properties. */ /* Merge in attributes specified via text properties. */
if (!NILP (prop)) if (!NILP (prop))
merge_face_ref (w, f, prop, attrs, true, NULL, 0); merge_face_ref (w, f, prop, attrs, true, NULL, attr_filter);
/* Now merge the overlay data. */ /* Now merge the overlay data. */
noverlays = sort_overlays (overlay_vec, noverlays, w); noverlays = sort_overlays (overlay_vec, noverlays, w);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment