From: Hiltjo Posthuma Date: Wed, 27 Dec 2017 12:36:53 +0000 (+0100) Subject: dont NUL terminate _NET_WM_NAME X-Git-Url: https://git.danieliu.xyz/?p=dwm.git;a=commitdiff_plain;h=db2236001c1cb042a2f24052849da96578273b1c;hp=3756f7f6b8dccf7a31789ffaf073a76fd1a87eb9 dont NUL terminate _NET_WM_NAME Reported by Kernc, thanks! "This makes a particular program that uses libwnck [1] fail after: Wnck-WARNING **: Property _NET_WM_NAME contained invalid UTF-8 in this code [2] because the returned string contains a '\0' and the documentation for g_utf8_validate() [3] explicitly states that when string length is provided, no nul bytes are allowed." It is not entirely clear it is incorrect, other WM's seem to not NUL terminate it either though. --- diff --git a/dwm.c b/dwm.c index ff893df..ec6a27c 100644 --- a/dwm.c +++ b/dwm.c @@ -1579,7 +1579,7 @@ setup(void) XChangeProperty(dpy, wmcheckwin, netatom[NetWMCheck], XA_WINDOW, 32, PropModeReplace, (unsigned char *) &wmcheckwin, 1); XChangeProperty(dpy, wmcheckwin, netatom[NetWMName], utf8string, 8, - PropModeReplace, (unsigned char *) "dwm", 4); + PropModeReplace, (unsigned char *) "dwm", 3); XChangeProperty(dpy, root, netatom[NetWMCheck], XA_WINDOW, 32, PropModeReplace, (unsigned char *) &wmcheckwin, 1); /* EWMH support per view */