Commit cfb1990d authored by Mihai Moldovan's avatar Mihai Moldovan Committed by Mike Gabriel

Add 057_nx-X11-bigendian-ppc64-no-session-window.patch. Fix failures in session…

Add 057_nx-X11-bigendian-ppc64-no-session-window.patch. Fix failures in session windows coming up on Big Endian systems like PPC64. (Fixes: #516).
parent 359c458f
nx-libs (2:3.5.0.25-0x2go1) UNRELEASED; urgency=low nx-libs (2:3.5.0.25-0x2go1) UNRELEASED; urgency=low
[ Mihai Moldovan ]
* Add 029_nxcomp_ppc64.full+lite.patch. Fix sockaddr handling on
Big Endian systems (like PPC64). (Fixes: #515).
* Add 057_nx-X11-bigendian-ppc64-no-session-window.patch. Fix
failures in session windows coming up on Big Endian systems
like PPC64. (Fixes: #516).
[ Mike Gabriel ]
* Add 606_nx-X11_build-on-aarch64.full.patch. Build on aarch64 * Add 606_nx-X11_build-on-aarch64.full.patch. Build on aarch64
architectures. (Fixes: #490). architectures. (Fixes: #490).
* Add 027_nxcomp_abstract-X11-socket.full+lite.patch. In proxy mode "server" * Add 027_nxcomp_abstract-X11-socket.full+lite.patch. In proxy mode "server"
...@@ -16,10 +24,6 @@ nx-libs (2:3.5.0.25-0x2go1) UNRELEASED; urgency=low ...@@ -16,10 +24,6 @@ nx-libs (2:3.5.0.25-0x2go1) UNRELEASED; urgency=low
test for xkb/rules/base instead of testing for deprecated file test for xkb/rules/base instead of testing for deprecated file
xkb/keymap.dir. (Fixes: #40). xkb/keymap.dir. (Fixes: #40).
[ Mihai Moldovan ]
* Add 029_nxcomp_ppc64.full+lite.patch. Fix sockaddr handling on
Big Endian systems (like PPC64). (Fixes: #515).
-- Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Wed, 07 May 2014 09:58:10 +0200 -- Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Wed, 07 May 2014 09:58:10 +0200
nx-libs (2:3.5.0.24-0x2go1) unstable; urgency=low nx-libs (2:3.5.0.24-0x2go1) unstable; urgency=low
......
Description: No session window with on PPC64 builds
Author: Mihai Moldovan <ionic@ionic.de>
Abstract:
An endiannes issue was setting incorrect event masks when creating X11 windows.
.
This time, a smaller integer has been casted to a bigger one and passed to some
function actually setting its value.
.
This meant, that garbage from stack was attached to the smaller integer value,
putting unknown memory into the lower bytes of the bigger integer.
.
Fix this by creating a big, initialized temporary variable, let the function do
its magic on that one and pass the value back to the smaller variable -- and
cross your fingers the smaller variable can hold it without overrunning. (The
last bit is a design issue we can't really fix and has been around even before
this patch.)
--- a/nx-X11/programs/Xserver/hw/nxagent/Window.c
+++ b/nx-X11/programs/Xserver/hw/nxagent/Window.c
@@ -327,7 +327,10 @@
if (mask & CWEventMask)
{
- nxagentGetEventMask(pWin, (Mask*)&attributes.event_mask);
+ /* Assume that the mask fits in int... broken on Big Endian 64bit systems. */
+ Mask tmp_mask = attributes.event_mask;
+ nxagentGetEventMask(pWin, &tmp_mask);
+ attributes.event_mask = (int)tmp_mask;
}
#ifdef WARNING
else
@@ -2891,7 +2894,10 @@
if (mask & CWEventMask)
{
- nxagentGetEventMask(pWin, (Mask*)&attributes.event_mask);
+ /* Assume that the mask fits in int... broken on Big Endian 64bit systems. */
+ Mask tmp_mask = attributes.event_mask;
+ nxagentGetEventMask(pWin, &tmp_mask);
+ attributes.event_mask = (int)tmp_mask;
}
#ifdef WARNING
else
...@@ -33,6 +33,7 @@ ...@@ -33,6 +33,7 @@
054_nx-X11_ppc64-ftbfs.full.patch 054_nx-X11_ppc64-ftbfs.full.patch
055_nx-X11_imake-Werror-format-security.full.patch 055_nx-X11_imake-Werror-format-security.full.patch
056_nx-X11-Werror-format-security.full.patch 056_nx-X11-Werror-format-security.full.patch
057_nx-X11-bigendian-ppc64-no-session-window.full.patch
101_nxagent_set-rgb-path.full.patch 101_nxagent_set-rgb-path.full.patch
102_xserver-xext_set-securitypolicy-path.full.patch 102_xserver-xext_set-securitypolicy-path.full.patch
103_nxagent_set-X0-config-path.full.patch 103_nxagent_set-X0-config-path.full.patch
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment