Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 108009 - x11-wm/openbox doesn't set X-properties correctly on amd64
Summary: x11-wm/openbox doesn't set X-properties correctly on amd64
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: AMD64 Linux
: High normal (vote)
Assignee: Aaron Kulbe (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-10-03 12:30 UTC by Martin Ehmsen (RETIRED)
Modified: 2005-11-26 11:00 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
openbox-3.3-rc2-_NET_WORKAREA-amd64.patch (openbox-3.3-rc2-_NET_WORKAREA-amd64.patch,653 bytes, patch)
2005-10-03 12:30 UTC, Martin Ehmsen (RETIRED)
Details | Diff
openbox-3.3-rc2-64bit-property.patch (openbox-3.3-rc2-64bit-property.patch,6.30 KB, patch)
2005-10-07 08:41 UTC, Martin Ehmsen (RETIRED)
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Martin Ehmsen (RETIRED) gentoo-dev 2005-10-03 12:30:35 UTC
I have had a funny problem with firefox not starting properly (see bug 96869).
It turned out that the problem is my window manager openbox, that does not set
the _NET_WORKAREA property correctly on amd64.

According to the freedesktop specs:
_NET_WORKAREA, x, y, width, height CARDINAL[][4]/32
But one shouldn't use guint32 (or any other 32-bit integer) to set the
_NET_WORKAREA property, since the xlib manual on XChangeProperty says:

"If the specified format is 8, the property data must be a char array. If the
specified format is 16, the property data must be a short array. If the
specified format is 32, the property data must be a long array."

So to set _NET_WORKAREA one should use an array of longs. And thats probably
where the confusion comes from, since a long is 64-bit on amd64, but
_NET_WORKAREA is a 32-bit value.

I have created a patch for openbox, which I will attach in a moment.
There might be other places where openbox uses guint32 instead of long...
Have a look at the upstream bugreport I have opened:
https://bugzilla.icculus.org/show_bug.cgi?id=2403

Reproducible: Always
Steps to Reproduce:
Comment 1 Martin Ehmsen (RETIRED) gentoo-dev 2005-10-03 12:30:56 UTC
Created attachment 69806 [details, diff]
openbox-3.3-rc2-_NET_WORKAREA-amd64.patch
Comment 2 Martin Ehmsen (RETIRED) gentoo-dev 2005-10-07 08:41:35 UTC
Created attachment 70098 [details, diff]
openbox-3.3-rc2-64bit-property.patch

A new patch that fixes serveral other occurences of properties being set
wrongly on amd64.
The patch basicly changes guint32 to gulong whenever the variable is being used
as a value for a property.
This should fix all occurences of set-properties, I havn't looked at problems
revolving around getting properties.
The patch is also sent upstream.
Comment 3 Martin Ehmsen (RETIRED) gentoo-dev 2005-10-08 06:00:58 UTC
A slight modified patch got applied upstream, so the fixes should be in the next
rc or final release.
Comment 4 Kathryn Kulick (RETIRED) gentoo-dev 2005-11-26 11:00:37 UTC
Added patch to tree :)