pkgsrc/wm/windowmaker/patches/patch-am
wiz dae606c882 Add patch fixing a problem with Qt applications on 64bit machines,
from Debian via Helge Mühlmeier in PR 43178.

Bump PKGREVISION.
2010-04-21 05:43:28 +00:00

96 lines
2.5 KiB
Text

$NetBSD: patch-am,v 1.1 2010/04/21 05:43:28 wiz Exp $
Fix Qt applications on 64bit platforms. PR 43178.
--- src/wmspec.c.orig 2005-05-15 16:41:09.000000000 +0000
+++ src/wmspec.c
@@ -35,6 +35,7 @@
#include <X11/Xlib.h>
#include <X11/Xatom.h>
+#include <X11/Xarch.h>
#include <string.h>
#include "WindowMaker.h"
@@ -322,15 +323,15 @@ setSupportedHints(WScreen *scr)
void
wNETWMUpdateDesktop(WScreen *scr)
{
- CARD32 *views, sizes[2];
+ long *views, sizes[2];
int count, i;
if (scr->workspace_count==0)
return;
count = scr->workspace_count * 2;
- views = wmalloc(sizeof(CARD32) * count);
- /*memset(views, 0, sizeof(CARD32) * count);*/
+ views = wmalloc(sizeof(long) * count);
+ /*memset(views, 0, sizeof(long) * count);*/
#ifdef VIRTUAL_DESKTOP
sizes[0] = scr->workspaces[scr->current_workspace]->width;
@@ -370,7 +371,7 @@ wNETWMGetCurrentDesktopFromHint(WScreen
0, 1, &count);
if (prop)
{
- int desktop= *(CARD32*)prop;
+ int desktop= *(long*)prop;
XFree(prop);
return desktop;
}
@@ -487,7 +488,7 @@ updateIconImage(WScreen *scr, WWindow *w
static void
updateShowDesktop(WScreen * scr, Bool show)
{
- CARD32 foo;
+ long foo;
foo = (show == True);
XChangeProperty(dpy, scr->root_win, net_showing_desktop, XA_CARDINAL, 32,
@@ -660,7 +661,7 @@ wNETWMUpdateActions(WWindow *wwin, Bool
void
wNETWMUpdateWorkarea(WScreen *scr, WArea usableArea)
{
- CARD32 *area;
+ long *area;
int count, i;
/* XXX: not Xinerama compatible,
@@ -670,7 +671,7 @@ wNETWMUpdateWorkarea(WScreen *scr, WArea
return;
count = scr->workspace_count * 4;
- area = wmalloc(sizeof(CARD32) * count);
+ area = wmalloc(sizeof(long) * count);
for (i=0; i<scr->workspace_count; i++) {
area[4*i + 0] = usableArea.x1;
area[4*i + 1] = usableArea.y1;
@@ -793,7 +794,7 @@ updateClientListStacking(WScreen *scr, W
static void
updateWorkspaceCount(WScreen *scr) /* changeable */
{
- CARD32 count;
+ long count;
count = scr->workspace_count;
@@ -805,7 +806,7 @@ updateWorkspaceCount(WScreen *scr) /* ch
static void
updateCurrentWorkspace(WScreen *scr) /* changeable */
{
- CARD32 count;
+ long count;
count = scr->current_workspace;
@@ -852,7 +853,7 @@ updateFocusHint(WScreen *scr, WWindow *w
static void
updateWorkspaceHint(WWindow *wwin, Bool fake, Bool del)
{
- CARD32 l;
+ long l;
if (del) {
XDeleteProperty(dpy, wwin->client_win, net_wm_desktop);