From c6dfbe77478dab4c18dd6605f9d922b812ed4f88 Mon Sep 17 00:00:00 2001 From: BossCode45 Date: Sat, 25 Feb 2023 17:18:57 +1300 Subject: feat: fixed bug where opening MPV caused a seg fault reason for bug: MPV doesn't provide any information about itself when mapping --- main.cpp | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/main.cpp b/main.cpp index 37ae38f..efd42dc 100644 --- a/main.cpp +++ b/main.cpp @@ -576,10 +576,13 @@ void mapRequest(XMapRequestEvent e) XMapWindow(dpy, e.window); XTextProperty name; - XGetWMName(dpy, e.window, &name); + bool gotName = XGetWMName(dpy, e.window, &name); XWindowAttributes attr; XGetWindowAttributes(dpy, e.window, &attr); - log("Mapping window: " << name.value); + if(gotName) + log("Mapping window: " << name.value); + else + log("Mapping window with unknown name (its probably mpv, mpv is annoying)"); log("\tWindow ID: " << e.window); Window focusedWindow; @@ -632,7 +635,7 @@ void mapRequest(XMapRequestEvent e) unsigned char* data; Atom type; int status = getProp(e.window, "_NET_WM_WINDOW_TYPE", &type, &data); - if (status == Success && ((Atom*)data)[0] == XInternAtom(dpy, "_NET_WM_WINDOW_TYPE_DOCK", false)) + if (status == Success && type != None && ((Atom*)data)[0] == XInternAtom(dpy, "_NET_WM_WINDOW_TYPE_DOCK", false)) { log("\tWindow was bar"); bH = attr.height; -- cgit v1.2.3