Subject: Re: bug#37774: 27.0.50; new :extend attribute broke visuals of all themes and other packages

From: Kévin Le Gouguec <[email-masked]>
Date: Thu, 05 Dec 2019 17:48:22 +0100

martin rudalics <[email-masked]> writes:

>> Please push it for me.
>
> Pushed now.  Please have a look.

(For context: this was commit 8232325337 "Handle case where a face's
:extend attribute is unspecified (Bug#37774)".)

I think there might have been a regression since this commit: in-between
1c29ba0340 (2019-11-17) and 21790e5473 (2019-12-05), something caused
the backgrounds to no longer extend for faces with unspecified :extend
inheriting faces with :extend t.

The attached theme sets :extend t for diff-{added,removed}, and sets
:inherit (diff-…) for ediff-fine-diff-{A,B}.

>From emacs -Q, running the following code:

    (add-to-list 'custom-theme-load-path default-directory)
    (load-theme 'extend-inherit t)
    (ediff-files "/usr/share/common-licenses/LGPL-2" "/usr/share/common-licenses/LGPL-2.1")

… gives the following results with commit 1c29ba0340:

… and the following results with commit 21790e5473:

Is this deliberate?  I don't think I read anything in this thread
suggesting it; apologies if I missed something.

If it's a bug, maybe this is due to recent changes in xfaces.c?

    git log --oneline 1c29ba0340..21790e5473 -- src/xfaces.c 
    d4515f3cab Support ':extend' in faces defined by list of key/value pairs
    19aecd340b Fix face merging when some have :extend non-nil and some are inherited