]> git.armaanb.net Git - dwm.git/commitdiff
dont NUL terminate _NET_WM_NAME
authorHiltjo Posthuma <hiltjo@codemadness.org>
Wed, 27 Dec 2017 12:36:53 +0000 (13:36 +0100)
committerHiltjo Posthuma <hiltjo@codemadness.org>
Wed, 27 Dec 2017 12:36:53 +0000 (13:36 +0100)
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.

dwm.c

diff --git a/dwm.c b/dwm.c
index ff893df5e8cf618db6dc9daa0d2e14f970fa28bb..ec6a27c6cda826db9b0c82956f834c51f7b34444 100644 (file)
--- 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 */