diff options
| author | rsc <devnull@localhost> | 2004-04-24 04:52:49 +0000 |
|---|---|---|
| committer | rsc <devnull@localhost> | 2004-04-24 04:52:49 +0000 |
| commit | 78802e6993a0f44d7ac7ff7d0922d55d1b089dac (patch) | |
| tree | 2131829fda5ff9ee9f8ef8c88695c361cc4ba335 /src/cmd/rio/manage.c | |
| parent | 272fd660b41d7ec793bc9d8972878510f3b66055 (diff) | |
| download | plan9port-78802e6993a0f44d7ac7ff7d0922d55d1b089dac.tar.gz plan9port-78802e6993a0f44d7ac7ff7d0922d55d1b089dac.zip | |
various bug fixes
Diffstat (limited to 'src/cmd/rio/manage.c')
| -rw-r--r-- | src/cmd/rio/manage.c | 7 |
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; } } } |
