summaryrefslogtreecommitdiffstats
path: root/src/cmd/rio/manage.c
diff options
context:
space:
mode:
authorrsc <devnull@localhost>2004-04-24 04:52:49 +0000
committerrsc <devnull@localhost>2004-04-24 04:52:49 +0000
commit78802e6993a0f44d7ac7ff7d0922d55d1b089dac (patch)
tree2131829fda5ff9ee9f8ef8c88695c361cc4ba335 /src/cmd/rio/manage.c
parent272fd660b41d7ec793bc9d8972878510f3b66055 (diff)
downloadplan9port-78802e6993a0f44d7ac7ff7d0922d55d1b089dac.tar.gz
plan9port-78802e6993a0f44d7ac7ff7d0922d55d1b089dac.zip
various bug fixes
Diffstat (limited to 'src/cmd/rio/manage.c')
-rw-r--r--src/cmd/rio/manage.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/cmd/rio/manage.c b/src/cmd/rio/manage.c
index 2c8f71c7..11892a06 100644
--- a/src/cmd/rio/manage.c
+++ b/src/cmd/rio/manage.c
@@ -359,8 +359,11 @@ getcmaps(Client *c)
XWindowAttributes attr;
if (!c->init) {
+ ignore_badwindow = 1;
XGetWindowAttributes(dpy, c->window, &attr);
c->cmap = attr.colormap;
+ XSync(dpy, False);
+ ignore_badwindow = 0;
}
n = _getprop(c->window, wm_colormaps, XA_WINDOW, 100L, (void*)&cw);
@@ -381,9 +384,13 @@ getcmaps(Client *c)
if (cw[i] == c->window)
c->wmcmaps[i] = c->cmap;
else {
+ /* flush any errors (e.g., caused by mozilla tabs) */
+ ignore_badwindow = 1;
XSelectInput(dpy, cw[i], ColormapChangeMask);
XGetWindowAttributes(dpy, cw[i], &attr);
c->wmcmaps[i] = attr.colormap;
+ XSync(dpy, False);
+ ignore_badwindow = 0;
}
}
}