ignore xerrors while using the pixmaps specified by the client, since they can certainly be invalid and there's nothing i can do about it.

This commit is contained in:
Dana Jansens 2003-06-03 04:52:54 +00:00
parent f7b687487c
commit 70a34967d6

View file

@ -1,5 +1,6 @@
#include "client.h" #include "client.h"
#include "dock.h" #include "dock.h"
#include "xerror.h"
#include "startup.h" #include "startup.h"
#include "screen.h" #include "screen.h"
#include "moveresize.h" #include "moveresize.h"
@ -1362,6 +1363,7 @@ void client_update_icons(Client *self)
if (num == 2) { if (num == 2) {
self->nicons++; self->nicons++;
self->icons = g_new(Icon, self->nicons); self->icons = g_new(Icon, self->nicons);
xerror_set_ignore(TRUE);
if (!render_pixmap_to_rgba(data[0], data[1], if (!render_pixmap_to_rgba(data[0], data[1],
&self->icons[self->nicons-1].width, &self->icons[self->nicons-1].width,
&self->icons[self->nicons-1].height, &self->icons[self->nicons-1].height,
@ -1369,6 +1371,7 @@ void client_update_icons(Client *self)
g_free(&self->icons[self->nicons-1]); g_free(&self->icons[self->nicons-1]);
self->nicons--; self->nicons--;
} }
xerror_set_ignore(FALSE);
} }
g_free(data); g_free(data);
} else { } else {
@ -1378,6 +1381,7 @@ void client_update_icons(Client *self)
if (hints->flags & IconPixmapHint) { if (hints->flags & IconPixmapHint) {
self->nicons++; self->nicons++;
self->icons = g_new(Icon, self->nicons); self->icons = g_new(Icon, self->nicons);
xerror_set_ignore(TRUE);
if (!render_pixmap_to_rgba(hints->icon_pixmap, if (!render_pixmap_to_rgba(hints->icon_pixmap,
(hints->flags & IconMaskHint ? (hints->flags & IconMaskHint ?
hints->icon_mask : None), hints->icon_mask : None),
@ -1387,6 +1391,7 @@ void client_update_icons(Client *self)
g_free(&self->icons[self->nicons-1]); g_free(&self->icons[self->nicons-1]);
self->nicons--; self->nicons--;
} }
xerror_set_ignore(FALSE);
} }
XFree(hints); XFree(hints);
} }