Hi,
This seems like arch-specific bug. Could you please try patch attached?
You can apply it to the sources obtained via 'apt-get source stalonetray',
run 'apt-get build-dep stalonetray', and then build the updated package by
running 'fakeroot debian/rules binary'.
--
Regards,
Roman
Index: src/xembed.c
===
--- src/xembed.c (revision 455)
+++ src/xembed.c (working copy)
@@ -534,10 +534,12 @@
{
Atom act_type;
int act_fmt;
- unsigned long nitems, bytesafter;
+ unsigned long nitems, bytesafter, *data;
unsigned char *tmpdata;
int rc;
- XGetWindowProperty(tray_data.dpy,
+ /* NOTE: x11_get_win_prop32 is not used since we need to distinguish between
+ * X11 errors and absence of the property */
+ rc = XGetWindowProperty(tray_data.dpy,
ti->wid,
tray_data.xembed_data.xa_xembed_info,
0,
@@ -549,11 +551,12 @@
&nitems,
&bytesafter,
&tmpdata);
- if (!x11_ok()) return XEMBED_RESULT_X11ERROR;
- rc = (x11_ok() && act_type == tray_data.xembed_data.xa_xembed_info && nitems == 2);
+ if (!x11_ok() || rc != Success) return XEMBED_RESULT_X11ERROR;
+ rc = (act_type == tray_data.xembed_data.xa_xembed_info && nitems == 2);
if (rc) {
- ti->xembed_data[0] = ((CARD32 *) tmpdata)[0];
- ti->xembed_data[1] = ((CARD32 *) tmpdata)[1];
+ data = (unsigned long*) tmpdata;
+ ti->xembed_data[0] = data[0];
+ ti->xembed_data[1] = data[1];
}
if (nitems && tmpdata != NULL) XFree(tmpdata);
return rc ? XEMBED_RESULT_OK : XEMBED_RESULT_UNSUPPORTED;
Index: src/icons.h
===
--- src/icons.h (revision 455)
+++ src/icons.h (working copy)
@@ -39,7 +39,7 @@
int is_layed_out; /* Flag: the icon is succesfully layed out */
int is_updated;/* Flag: the position of the icon needs to be updated */
int is_xembed_supported; /* Flag: does the icon support xembed */
- CARD32 xembed_data[2]; /* XEMBED data */
+ unsigned long xembed_data[2];/* XEMBED data */
int is_size_set; /* Flag: has the size for the icon been set */
int is_xembed_accepts_focus;/* Flag: does the icon want focus */
long xembed_last_timestamp; /* The timestamp of last processed xembed message */