Unset window pixmaps from MutterShapedWindow before freeing them
At least with the Mesa/DRI implementation of GLX, calling XFreePixmap() on a pixmap before glxDestroyPixmap() on the corresponding GLX pixmap causes an X error. To avoid triggering this with the new ClutterTexturePixmapX11 code, we need to move our XFreePixmap after unsetting the pixmap from the actor. https://bugzilla.gnome.org/show_bug.cgi?id=627210
This commit is contained in:
parent
0839c100c0
commit
0b3327f04d
@ -1028,10 +1028,10 @@ mutter_window_detach (MutterWindow *self)
|
||||
if (!priv->back_pixmap)
|
||||
return;
|
||||
|
||||
XFreePixmap (xdisplay, priv->back_pixmap);
|
||||
priv->back_pixmap = None;
|
||||
clutter_x11_texture_pixmap_set_pixmap (CLUTTER_X11_TEXTURE_PIXMAP (priv->actor),
|
||||
None);
|
||||
XFreePixmap (xdisplay, priv->back_pixmap);
|
||||
|
||||
mutter_window_queue_create_pixmap (self);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user