Skip to content

Commit

Permalink
fix race when window is newly managed
Browse files Browse the repository at this point in the history
I'm not exactly sure what's going on here, which is why I left the log in.
Relevant bits of the xtrace are:

000:<:02e5: 28: Request(18): ChangeProperty mode=Replace(0x00) window=0x00a003c8 property=0x148("_NET_WM_DESKTOP") type=0x6("CARDINAL") data=0x00000000;
000:<:02e6:  4: Request(43): GetInputFocus
000:>:02e5:Error 3=Window: major=18, minor=0, bad=10486728
000:>:02e6:32: Reply to GetInputFocus: revert-to=Parent(0x02) focus=0x00a00079
2015-05-11 16:20:00,438 ERROR _xpoll:668 Got an exception in poll loop
Traceback (most recent call last):
  File "/usr/lib/python3.4/site-packages/libqtile/manager.py", line 657, in _xpoll
    r = h(e)
  File "/usr/lib/python3.4/site-packages/libqtile/manager.py", line 999, in handle_MapRequest
    c = self.manage(w)
  File "/usr/lib/python3.4/site-packages/libqtile/manager.py", line 549, in manage
    self.currentScreen.group.add(c, focus=c.can_steal_focus())
  File "/usr/lib/python3.4/site-packages/libqtile/group.py", line 210, in add
    win.group = self
  File "/usr/lib/python3.4/site-packages/libqtile/window.py", line 713, in group
    self.qtile.groups.index(group)
  File "/usr/lib/python3.4/site-packages/libqtile/xcbq.py", line 637, in set_property
    value
  File "/usr/lib/python3.4/site-packages/xcffib/__init__.py", line 306, in check
    self.conn.request_check(self.sequence)
  File "/usr/lib/python3.4/site-packages/xcffib/__init__.py", line 520, in wrapper
    return f(*args)
  File "/usr/lib/python3.4/site-packages/xcffib/__init__.py", line 627, in request_check
    self._process_error(err)
  File "/usr/lib/python3.4/site-packages/xcffib/__init__.py", line 598, in _process_error
    raise error(buf)
xcffib.xproto.WindowError
�[0m�[31m2015-05-11 16:20:00,438 �[1m�[31mqtile _xpoll:668 �[0m Got an exception in poll loop
Traceback (most recent call last):
  File "/usr/lib/python3.4/site-packages/libqtile/manager.py", line 657, in _xpoll
    r = h(e)
  File "/usr/lib/python3.4/site-packages/libqtile/manager.py", line 999, in handle_MapRequest
    c = self.manage(w)
  File "/usr/lib/python3.4/site-packages/libqtile/manager.py", line 549, in manage
    self.currentScreen.group.add(c, focus=c.can_steal_focus())
  File "/usr/lib/python3.4/site-packages/libqtile/group.py", line 210, in add
    win.group = self
  File "/usr/lib/python3.4/site-packages/libqtile/window.py", line 713, in group
    self.qtile.groups.index(group)
  File "/usr/lib/python3.4/site-packages/libqtile/xcbq.py", line 637, in set_property
    value
  File "/usr/lib/python3.4/site-packages/xcffib/__init__.py", line 306, in check
    self.conn.request_check(self.sequence)
  File "/usr/lib/python3.4/site-packages/xcffib/__init__.py", line 520, in wrapper
    return f(*args)
  File "/usr/lib/python3.4/site-packages/xcffib/__init__.py", line 627, in request_check
    self._process_error(err)
  File "/usr/lib/python3.4/site-packages/xcffib/__init__.py", line 598, in _process_error
    raise error(buf)
xcffib.xproto.WindowError�[0m

So what it looks like is happening is that we're trying to set NET_WM_DESKTOP
before the windowid is known to X, and that's causing things to be sad. Since
NET_WM_DESKTOP isn't really all that important (it's not used by qtile for
anything except on restart, which is reasonably rare), we can just ignore this
failure. However, it would be nice to understand why it's happening.
  • Loading branch information
tych0 committed May 11, 2015
1 parent 58498d6 commit 39ea653
Showing 1 changed file with 7 additions and 4 deletions.
11 changes: 7 additions & 4 deletions libqtile/window.py
Expand Up @@ -719,10 +719,13 @@ def group(self):
@group.setter
def group(self, group):
if group:
self.window.set_property(
"_NET_WM_DESKTOP",
self.qtile.groups.index(group)
)
try:
self.window.set_property(
"_NET_WM_DESKTOP",
self.qtile.groups.index(group)
)
except xcffib.xproto.WindowError:
self.qtile.log.exception("whoops, got error setting _NET_WM_DESKTOP, too early?")
self._group = group

@property
Expand Down

0 comments on commit 39ea653

Please sign in to comment.