projects
/
profile
/
ivi
/
pixman.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
c750667
)
Fix bug in vmx_combine_xor_ca()
author
Søren Sandmann Pedersen
<sandmann@redhat.com>
Fri, 7 Aug 2009 14:54:16 +0000
(10:54 -0400)
committer
Søren Sandmann Pedersen
<sandmann@redhat.com>
Sat, 8 Aug 2009 22:50:18 +0000
(18:50 -0400)
The destination needs to be inverted before the alpha channel is
extracted; otherwise, the RGB channels of da will be 0xff.
pixman/pixman-vmx.c
patch
|
blob
|
history
diff --git
a/pixman/pixman-vmx.c
b/pixman/pixman-vmx.c
index
7d947d1
..
5978a07
100644
(file)
--- a/
pixman/pixman-vmx.c
+++ b/
pixman/pixman-vmx.c
@@
-1542,11
+1542,11
@@
vmx_combine_xor_ca (pixman_implementation_t *imp,
uint32_t s = src[i];
uint32_t d = dest[i];
uint32_t sa = ALPHA_8 (s);
- uint32_t da = ALPHA_8 (d);
+ uint32_t da = ALPHA_8 (
~
d);
UN8x4_MUL_UN8x4 (s, a);
UN8x4_MUL_UN8 (a, sa);
- UN8x4_MUL_UN8x4_ADD_UN8x4_MUL_UN8 (d, ~a, s,
~
da);
+ UN8x4_MUL_UN8x4_ADD_UN8x4_MUL_UN8 (d, ~a, s, da);
dest[i] = d;
}
}