mirror of
https://github.com/X11Libre/xserver.git
synced 2026-09-22 20:35:43 +00:00
Fix problems in render fb implementation found by rendercheck:
- fbCombineSaturate was pointed at fbCombineDisjointOver, instead of
fbCombineDisjointOverReverse as it should. Instead, point
fbCombineDisjointOverReverse at fbCombineSaturate (which is likely to
be faster).
- fix previously-unused fbCombineSaturate implementation.
- fbCombineMaskAlphaC was just a copy of fbCombineMaskValueC. Make it do
what it's supposed to (return a cs.alpha).
- fbCombineAtopC didn't invert the source alpha value.
- fix copy'n'paste errors in fbCombine(Dis/Con)jointGeneralC, also source
alpha wasn't treated in a component fashion.
- fbCompositeSrc_8888* didn't handle when the source lacks an alpha
channel. Rather than adding that and possilby slowing down the (normal)
alpha case, don't let x8r8g8b8/x8b8g8r8 Pictures be used in
fbCompositeSrc_8888* because Over with one of these is just Src.
This commit is contained in:
parent
a43d5412b4
commit
4078457919
3 changed files with 65 additions and 84 deletions
|
|
@ -1001,7 +1001,6 @@ fbComposite (CARD8 op,
|
|||
{
|
||||
switch (pSrc->format) {
|
||||
case PICT_a8r8g8b8:
|
||||
case PICT_x8r8g8b8:
|
||||
switch (pDst->format) {
|
||||
case PICT_a8r8g8b8:
|
||||
case PICT_x8r8g8b8:
|
||||
|
|
@ -1016,7 +1015,6 @@ fbComposite (CARD8 op,
|
|||
}
|
||||
break;
|
||||
case PICT_a8b8g8r8:
|
||||
case PICT_x8b8g8r8:
|
||||
switch (pDst->format) {
|
||||
case PICT_a8b8g8r8:
|
||||
case PICT_x8b8g8r8:
|
||||
|
|
|
|||
Loading…
Reference in a new issue