Lubos Lunak wrote: > Dne èt 9. záøí 2004 15:01 groot@kde.org napsal(a): > >>On Thu, 9 Sep 2004, Lubos Lunak wrote: >> >>>On Wednesday 08 of September 2004 14:37, Karol Szkudlarek wrote: >>> >>>>In my opinion implementation free.desktop standard (I checked the >>>>latest cvs version) in file netwm.cpp does not work on platforms with >>>>long == 8 bytes. For instance: >>> >>> As far as I can say manpage for XChangeProperty() says 32 bit data >>>should be of type long. >> >>Which is weird, since a long is 64 bits. > > > Well, XChangeProperty is old. Moreover, Xlib compiled with long == 64bit > seems to do the necessary transformation. > > >>>>I don't know whether KDE have assumption that long is 4 bytes?! >>> >>> KDE seems to run fine e.g. on AMD64 machines. >> >>Yes, it does run just fine in 64-bit mode here, though I wouldn't know how >>to trigger the specific code quoted by the OP in order to test is >>specifically. > > > -- > Lubos Lunak > KDE Developer > > >>>Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to unsubscribe << > > Hi! Yes you right. I looked at XFree86 sources and implementation XChangeProperty. They do very complicated things with data on 32 and 64 bits. :-) Also I read manual and saw: If the specified format is 32, the property data MUST (!) be a long array. I tested (on amd64) setStrut with data contains 4 ints and 4 longs and suprisingly 4 ints here are wrong! :-) Privately for me was very weird that XChangeProperty needs 16 bytes of data on 32-bit platforms and needs 32 bytes on 64-bit. So, on 64-bit it wastes all 16 bytes.. :-))) Thanks and greets to all, Karol Szkudlarek >> Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to unsubscribe <<