[PATCH xclock] Fix a crash on sparc64.

David Coppa dcoppa at gmail.com
Thu Jul 29 12:46:11 PDT 2010


The pid variable that is passed to XChangeProperty() is not a long.
The libX11 code deferences the variable as a long and on a 64-bit sparc
this must be aligned on a 8-byte boundary.

Signed-off-by: Matthieu Herrb <matthieu.herrb at laas.fr>
---
 xclock.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/xclock.c b/xclock.c
index 6b80ad0..5965a83 100644
--- a/xclock.c
+++ b/xclock.c
@@ -215,7 +215,7 @@ main(int argc, char *argv[])
 
 #ifdef HAVE_GETPID
     {
-	pid_t pid = getpid();
+	unsigned long pid = (unsigned long)getpid();
 	XChangeProperty(XtDisplay(toplevel), XtWindow(toplevel),
 			XInternAtom(XtDisplay(toplevel), "_NET_WM_PID", False),
 			XA_CARDINAL, 32, PropModeReplace,
-- 
1.7.0.5


-- 
Matthieu Herrb


More information about the xorg-devel mailing list