diff options
| author | BossCode45 <human.cyborg42@gmail.com> | 2023-02-25 17:18:57 +1300 |
|---|---|---|
| committer | BossCode45 <human.cyborg42@gmail.com> | 2023-02-25 17:18:57 +1300 |
| commit | c6dfbe77478dab4c18dd6605f9d922b812ed4f88 (patch) | |
| tree | e933855409379ab3d48730937d586e086462c983 | |
| parent | fbc2a30ab874fe852780d0fa9791ee6f9223f692 (diff) | |
| download | YATwm-c6dfbe77478dab4c18dd6605f9d922b812ed4f88.tar.gz YATwm-c6dfbe77478dab4c18dd6605f9d922b812ed4f88.zip | |
feat: fixed bug where opening MPV caused a seg fault
reason for bug: MPV doesn't provide any information about itself when mapping
| -rw-r--r-- | main.cpp | 9 |
1 files changed, 6 insertions, 3 deletions
@@ -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; |
