forked from pool/xorg-x11-server
- u_render-Cast-color-masks-to-unsigned-long-before-shifting-them.patch:
Make sure result of shift operation fits into type of variable. This fixes finding the correct visual for RENDER with a BGRA framebuffer (bnc#876757). OBS-URL: https://build.opensuse.org/package/show/X11:XOrg/xorg-x11-server?expand=0&rev=520
This commit is contained in:
parent
5cd006c211
commit
49cb1d999d
@ -0,0 +1,41 @@
|
|||||||
|
From: Egbert Eich <eich@hammer45.arch.suse.de>
|
||||||
|
Date: Fri May 30 19:08:00 2014 -0400
|
||||||
|
Subject: [PATCH]render: Cast color masks to unsigned long before shifting them
|
||||||
|
Patch-mainline: to be upstreamed
|
||||||
|
Git-commit: 6ec9a78f9b79668239c3a1519d715cbecf186cef
|
||||||
|
Git-repo:
|
||||||
|
References: bnc#876757
|
||||||
|
Signed-off-by: Egbert Eich <eich@suse.com>
|
||||||
|
|
||||||
|
The color masks in DirectFormatRec are CARD16. Shifting them may lead
|
||||||
|
to unexpected results. Cast them to unsigned long to make sure the
|
||||||
|
shifted value will still fit into that type.
|
||||||
|
|
||||||
|
Signed-off-by: Egbert Eich <eich@suse.de>
|
||||||
|
---
|
||||||
|
render/picture.c | 12 ++++++------
|
||||||
|
1 file changed, 6 insertions(+), 6 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/render/picture.c b/render/picture.c
|
||||||
|
index 2908b76..74369de 100644
|
||||||
|
--- a/render/picture.c
|
||||||
|
+++ b/render/picture.c
|
||||||
|
@@ -548,12 +548,12 @@ PictureMatchVisual(ScreenPtr pScreen, int depth, VisualPtr pVisual)
|
||||||
|
return format;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
- if (format->direct.redMask << format->direct.red ==
|
||||||
|
- pVisual->redMask &&
|
||||||
|
- format->direct.greenMask << format->direct.green ==
|
||||||
|
- pVisual->greenMask &&
|
||||||
|
- format->direct.blueMask << format->direct.blue ==
|
||||||
|
- pVisual->blueMask) {
|
||||||
|
+ if (((unsigned long)format->direct.redMask) <<
|
||||||
|
+ format->direct.red == pVisual->redMask &&
|
||||||
|
+ ((unsigned long)format->direct.greenMask) <<
|
||||||
|
+ format->direct.green == pVisual->greenMask &&
|
||||||
|
+ ((unsigned long)format->direct.blueMask) <<
|
||||||
|
+ format->direct.blue == pVisual->blueMask) {
|
||||||
|
return format;
|
||||||
|
}
|
||||||
|
}
|
@ -1,3 +1,11 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri May 30 23:44:55 UTC 2014 - eich@suse.com
|
||||||
|
|
||||||
|
- u_render-Cast-color-masks-to-unsigned-long-before-shifting-them.patch:
|
||||||
|
Make sure result of shift operation fits into type of variable. This
|
||||||
|
fixes finding the correct visual for RENDER with a BGRA framebuffer
|
||||||
|
(bnc#876757).
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Wed May 28 11:00:49 UTC 2014 - sndirsch@suse.com
|
Wed May 28 11:00:49 UTC 2014 - sndirsch@suse.com
|
||||||
|
|
||||||
|
@ -152,6 +152,7 @@ Patch106: u_exa-only-draw-valid-trapezoids.patch
|
|||||||
Patch107: u_arch-Fix-image-and-bitmap-byte-order-for-ppc64le.patch
|
Patch107: u_arch-Fix-image-and-bitmap-byte-order-for-ppc64le.patch
|
||||||
Patch110: u_connection-avoid-crash-when-CloseWellKnownConnections-gets-called-twice.patch
|
Patch110: u_connection-avoid-crash-when-CloseWellKnownConnections-gets-called-twice.patch
|
||||||
Patch111: u_CloseConsole-Don-t-report-FatalError-when-shutting-down.patch
|
Patch111: u_CloseConsole-Don-t-report-FatalError-when-shutting-down.patch
|
||||||
|
Patch112: u_render-Cast-color-masks-to-unsigned-long-before-shifting-them.patch
|
||||||
|
|
||||||
Patch162: b_cache-xkbcomp-output-for-fast-start-up.patch
|
Patch162: b_cache-xkbcomp-output-for-fast-start-up.patch
|
||||||
Patch211: b_0001-Prevent-XSync-Alarms-from-senslessly-calling-CheckTr.patch
|
Patch211: b_0001-Prevent-XSync-Alarms-from-senslessly-calling-CheckTr.patch
|
||||||
@ -229,6 +230,7 @@ cp %{SOURCE90} .
|
|||||||
%patch107 -p1
|
%patch107 -p1
|
||||||
%patch110 -p1
|
%patch110 -p1
|
||||||
%patch111 -p1
|
%patch111 -p1
|
||||||
|
%patch112 -p1
|
||||||
|
|
||||||
### disabled for now
|
### disabled for now
|
||||||
#%patch162 -p1
|
#%patch162 -p1
|
||||||
|
Loading…
Reference in New Issue
Block a user