- XGetGeometry(ob_display, e->xbutton.window,
- &wjunk, &junk1, &junk2, &w, &h, &b, &ujunk);
- if (e->xbutton.x >= (signed)-b &&
- e->xbutton.y >= (signed)-b &&
- e->xbutton.x < (signed)(w+b) &&
- e->xbutton.y < (signed)(h+b)) {
- click = TRUE;
- /* double clicks happen if there were 2 in a row! */
- if (lbutton == button &&
- lwindow == e->xbutton.window &&
- e->xbutton.time - config_mouse_dclicktime <=
- ltime) {
- dclick = TRUE;
- lbutton = 0;
+ xerror_set_ignore(TRUE);
+ junk1 = XGetGeometry(ob_display, e->xbutton.window,
+ &wjunk, &junk1, &junk2, &w, &h, &b, &ujunk);
+ xerror_set_ignore(FALSE);
+ if (junk1) {
+ if (e->xbutton.x >= (signed)-b &&
+ e->xbutton.y >= (signed)-b &&
+ e->xbutton.x < (signed)(w+b) &&
+ e->xbutton.y < (signed)(h+b)) {
+ click = TRUE;
+ /* double clicks happen if there were 2 in a row! */
+ if (lbutton == button &&
+ lwindow == e->xbutton.window &&
+ e->xbutton.time - config_mouse_dclicktime <=
+ ltime) {
+ dclick = TRUE;
+ lbutton = 0;
+ } else {
+ lbutton = button;
+ lwindow = e->xbutton.window;
+ }