packages: wmctrl/wmctrl.spec, wmctrl/wmctrl-64bit.patch (NEW) - add patch f...

atler atler at pld-linux.org
Sun Jan 29 13:34:18 CET 2012


Author: atler                        Date: Sun Jan 29 12:34:18 2012 GMT
Module: packages                      Tag: HEAD
---- Log message:
- add patch for 64bit platforms (taken from gentoo)
- rel 2

---- Files affected:
packages/wmctrl:
   wmctrl.spec (1.12 -> 1.13) , wmctrl-64bit.patch (NONE -> 1.1)  (NEW)

---- Diffs:

================================================================
Index: packages/wmctrl/wmctrl.spec
diff -u packages/wmctrl/wmctrl.spec:1.12 packages/wmctrl/wmctrl.spec:1.13
--- packages/wmctrl/wmctrl.spec:1.12	Wed Jun  4 06:47:46 2008
+++ packages/wmctrl/wmctrl.spec	Sun Jan 29 13:34:13 2012
@@ -3,12 +3,13 @@
 Summary(pl.UTF-8):	wmtrl - tekstowe narzędzie do interakcji z zarządcami okien kompatybilnymi z EWMH/NetWM
 Name:		wmctrl
 Version:	1.07
-Release:	1
+Release:	2
 License:	GPL
 Group:		X11/Applications
 Vendor:		Tomas Styblo <tripie at cpan.org>
 Source0:	http://sweb.cz/tripie/utils/wmctrl/dist/%{name}-%{version}.tar.gz
 # Source0-md5:	1fe3c7a2caa6071e071ba34f587e1555
+Patch0:		%{name}-64bit.patch
 URL:		http://sweb.cz/tripie/utils/wmctrl/
 BuildRequires:	autoconf
 BuildRequires:	automake
@@ -50,6 +51,7 @@
 
 %prep
 %setup -q
+%patch0 -p1
 
 %build
 %{__libtoolize}
@@ -80,6 +82,10 @@
 All persons listed below can be reached at <cvs_login>@pld-linux.org
 
 $Log$
+Revision 1.13  2012/01/29 12:34:13  atler
+- add patch for 64bit platforms (taken from gentoo)
+- rel 2
+
 Revision 1.12  2008/06/04 04:47:46  charles
 - modular xorg deps
 

================================================================
Index: packages/wmctrl/wmctrl-64bit.patch
diff -u /dev/null packages/wmctrl/wmctrl-64bit.patch:1.1
--- /dev/null	Sun Jan 29 13:34:18 2012
+++ packages/wmctrl/wmctrl-64bit.patch	Sun Jan 29 13:34:13 2012
@@ -0,0 +1,28 @@
+--- wmctrl-1.07.orig/main.c
++++ wmctrl-1.07/main.c
+@@ -1425,6 +1425,16 @@
+      *
+      * long_length = Specifies the length in 32-bit multiples of the
+      *               data to be retrieved.
++     *
++     * NOTE:  see 
++     * http://mail.gnome.org/archives/wm-spec-list/2003-March/msg00067.html
++     * In particular:
++     *
++     * 	When the X window system was ported to 64-bit architectures, a
++     * rather peculiar design decision was made. 32-bit quantities such
++     * as Window IDs, atoms, etc, were kept as longs in the client side
++     * APIs, even when long was changed to 64 bits.
++     *
+      */
+     if (XGetWindowProperty(disp, win, xa_prop_name, 0, MAX_PROPERTY_VALUE_LEN / 4, False,
+             xa_prop_type, &xa_ret_type, &ret_format,     
+@@ -1441,6 +1451,8 @@
+ 
+     /* null terminate the result to make string handling easier */
+     tmp_size = (ret_format / 8) * ret_nitems;
++    /* Correct 64 Architecture implementation of 32 bit data */
++    if(ret_format==32) tmp_size *= sizeof(long)/4;
+     ret = g_malloc(tmp_size + 1);
+     memcpy(ret, ret_prop, tmp_size);
+     ret[tmp_size] = '\0';
================================================================

---- CVS-web:
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/wmctrl/wmctrl.spec?r1=1.12&r2=1.13&f=u



More information about the pld-cvs-commit mailing list