Correct setting of _NET_WM_PID
The property _NET_WM_PID is a CARDINAL which per definition has format 32, whatever the size of pid_t may be. CARDINALS (and other format 32 items) must always be passed to Xlib in long's, whatever the size of long may be.
This commit is contained in:
parent
bf6c062779
commit
e9468d3d36
4
window.c
4
window.c
|
@ -189,7 +189,7 @@ void win_open(win_t *win)
|
||||||
int gmask;
|
int gmask;
|
||||||
XSizeHints sizehints;
|
XSizeHints sizehints;
|
||||||
XWMHints hints;
|
XWMHints hints;
|
||||||
pid_t pid;
|
long pid;
|
||||||
char hostname[256];
|
char hostname[256];
|
||||||
XSetWindowAttributes attrs;
|
XSetWindowAttributes attrs;
|
||||||
char res_class[] = RES_CLASS;
|
char res_class[] = RES_CLASS;
|
||||||
|
@ -247,7 +247,7 @@ void win_open(win_t *win)
|
||||||
/* set the _NET_WM_PID */
|
/* set the _NET_WM_PID */
|
||||||
pid = getpid();
|
pid = getpid();
|
||||||
XChangeProperty(e->dpy, win->xwin, atoms[ATOM__NET_WM_PID], XA_CARDINAL,
|
XChangeProperty(e->dpy, win->xwin, atoms[ATOM__NET_WM_PID], XA_CARDINAL,
|
||||||
sizeof(pid_t) * 8, PropModeReplace, (unsigned char *) &pid, 1);
|
32, PropModeReplace, (unsigned char *) &pid, 1);
|
||||||
if (gethostname(hostname, ARRLEN(hostname)) == 0) {
|
if (gethostname(hostname, ARRLEN(hostname)) == 0) {
|
||||||
XTextProperty tp;
|
XTextProperty tp;
|
||||||
tp.value = (unsigned char *)hostname;
|
tp.value = (unsigned char *)hostname;
|
||||||
|
|
Loading…
Reference in a new issue