aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorEli Zaretskii2019-12-16 17:43:30 +0200
committerEli Zaretskii2019-12-16 17:43:30 +0200
commit1e240a0ecdcf0eb4653ba57f8daa138ba2a2aab6 (patch)
treec341768ed90e8e40889fe4cde143e0ff28a396c6 /src
parent5aab1e83f55ccbf7affc25272f6b1107aa17598c (diff)
downloademacs-1e240a0ecdcf0eb4653ba57f8daa138ba2a2aab6.tar.gz
emacs-1e240a0ecdcf0eb4653ba57f8daa138ba2a2aab6.zip
Fix face merging for display strings broken by a recent commit
* src/xfaces.c (face_at_string_position): Revert the last change, as it cannot possibly solve bug#38563. * src/xdisp.c (face_at_pos): Fix a typo made during last change here, which broke face merging for display strings. (Bug#38633)
Diffstat (limited to 'src')
-rw-r--r--src/xdisp.c2
-rw-r--r--src/xfaces.c4
2 files changed, 1 insertions, 5 deletions
diff --git a/src/xdisp.c b/src/xdisp.c
index 4ddde1be717..08c6927052c 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -4243,7 +4243,7 @@ face_at_pos (const struct it *it, enum lface_attribute_index attr_filter)
4243 the display string do. This sounds like a design bug, 4243 the display string do. This sounds like a design bug,
4244 but Emacs always did that since v21.1, so changing that 4244 but Emacs always did that since v21.1, so changing that
4245 might be a big deal. */ 4245 might be a big deal. */
4246 base_face_id = it->string_from_display_prop_p 4246 base_face_id = it->string_from_prefix_prop_p
4247 ? (!NILP (Vface_remapping_alist) 4247 ? (!NILP (Vface_remapping_alist)
4248 ? lookup_basic_face (it->w, it->f, DEFAULT_FACE_ID) 4248 ? lookup_basic_face (it->w, it->f, DEFAULT_FACE_ID)
4249 : DEFAULT_FACE_ID) 4249 : DEFAULT_FACE_ID)
diff --git a/src/xfaces.c b/src/xfaces.c
index 26fd3631f90..c5515e71512 100644
--- a/src/xfaces.c
+++ b/src/xfaces.c
@@ -6446,10 +6446,6 @@ face_at_string_position (struct window *w, Lisp_Object string,
6446 6446
6447 /* Begin with attributes from the base face. */ 6447 /* Begin with attributes from the base face. */
6448 memcpy (attrs, base_face->lface, sizeof attrs); 6448 memcpy (attrs, base_face->lface, sizeof attrs);
6449 /* Reset the attribute of the base face used as the filter, because
6450 otherwise there's no way for faces to be merged to countermand that. */
6451 if (EQ (attrs[attr_filter], Qt))
6452 attrs[attr_filter] = Qnil;
6453 6449
6454 /* Merge in attributes specified via text properties. */ 6450 /* Merge in attributes specified via text properties. */
6455 if (!NILP (prop)) 6451 if (!NILP (prop))