gint obt_display_extension_composite_basep;
gboolean obt_display_extension_damage = FALSE;
gint obt_display_extension_damage_basep;
+gint obt_display_extension_damage_error;
gboolean obt_display_extension_render = FALSE;
gint obt_display_extension_render_basep;
gboolean obt_display_extension_fixes = FALSE;
obt_display_extension_damage =
XDamageQueryExtension(d, &obt_display_extension_damage_basep,
- &junk);
+ &obt_display_extension_damage_error);
if (!obt_display_extension_damage)
g_message("X Damage extension is not present on the server");
XGetErrorText(d, e->error_code, errtxt, 127);
if (!xerror_ignore) {
- if (e->error_code == BadWindow)
- /*g_debug(_("X Error: %s\n"), errtxt)*/;
+ if (e->error_code == BadWindow ||
+ (obt_display_extension_damage &&
+ e->error_code - obt_display_extension_damage_error == BadDamage))
+ {
+ /*g_error("X Error: %d '%s'", e->error_code, errtxt);*/
+ }
else
g_error("X Error: %s", errtxt);
} else
extern gint obt_display_extension_composite_basep;
extern gboolean obt_display_extension_damage;
extern gint obt_display_extension_damage_basep;
+extern gint obt_display_extension_damage_error;
extern gboolean obt_display_extension_render;
extern gint obt_display_extension_render_basep;
extern gboolean obt_display_extension_fixes;
#ifdef USE_COMPOSITING
if (self->type != OB_WINDOW_CLASS_PROMPT) {
- if (self->damage) {
- obt_display_ignore_errors(TRUE);
+ if (self->damage)
XDamageDestroy(obt_display, self->damage);
- obt_display_ignore_errors(FALSE);
- }
if (self->gpixmap)
glXDestroyPixmap(obt_display, self->gpixmap);
if (self->pixmap)