mirror of
https://github.com/brl/mutter.git
synced 2025-02-08 17:44:09 +00:00
2008-06-30 Matthew Allum <mallum@openedhand.com>
Bug 1008 - tfp still a bit borked * clutter/x11/clutter-x11-texture-pixmap.c: Fix from Andy Wingo for sync_window borkage
This commit is contained in:
parent
604990a53b
commit
5beb8b7779
@ -1,3 +1,10 @@
|
|||||||
|
2008-06-30 Matthew Allum <mallum@openedhand.com>
|
||||||
|
|
||||||
|
Bug 1008 - tfp still a bit borked
|
||||||
|
|
||||||
|
* clutter/x11/clutter-x11-texture-pixmap.c:
|
||||||
|
Fix from Andy Wingo for sync_window borkage
|
||||||
|
|
||||||
2008-06-30 Neil Roberts <neil@o-hand.com>
|
2008-06-30 Neil Roberts <neil@o-hand.com>
|
||||||
|
|
||||||
Bug 985 - MSC math.h / M_PI issue
|
Bug 985 - MSC math.h / M_PI issue
|
||||||
|
@ -1024,33 +1024,34 @@ void
|
|||||||
clutter_x11_texture_pixmap_sync_window (ClutterX11TexturePixmap *texture)
|
clutter_x11_texture_pixmap_sync_window (ClutterX11TexturePixmap *texture)
|
||||||
{
|
{
|
||||||
ClutterX11TexturePixmapPrivate *priv;
|
ClutterX11TexturePixmapPrivate *priv;
|
||||||
Pixmap pixmap;
|
Pixmap pixmap, prev_pixmap;
|
||||||
|
|
||||||
g_return_if_fail (CLUTTER_X11_IS_TEXTURE_PIXMAP (texture));
|
g_return_if_fail (CLUTTER_X11_IS_TEXTURE_PIXMAP (texture));
|
||||||
|
|
||||||
priv = texture->priv;
|
priv = texture->priv;
|
||||||
|
|
||||||
/* we own the pixmap */
|
if (!clutter_x11_has_composite_extension())
|
||||||
if (priv->pixmap)
|
|
||||||
{
|
{
|
||||||
pixmap = priv->pixmap;
|
clutter_x11_texture_pixmap_set_pixmap (texture, priv->window);
|
||||||
/* This will cause an additional notify emission; suckiness. */
|
return;
|
||||||
clutter_x11_texture_pixmap_set_pixmap (texture, None);
|
|
||||||
XFreePixmap (clutter_x11_get_default_display (), pixmap);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* we own the pixmap */
|
||||||
|
prev_pixmap = priv->pixmap;
|
||||||
|
|
||||||
if (priv->window && clutter_x11_has_composite_extension())
|
if (priv->window)
|
||||||
{
|
{
|
||||||
|
Display *dpy = clutter_x11_get_default_display ();
|
||||||
|
|
||||||
clutter_x11_trap_x_errors ();
|
clutter_x11_trap_x_errors ();
|
||||||
pixmap = XCompositeNameWindowPixmap (clutter_x11_get_default_display(),
|
pixmap = XCompositeNameWindowPixmap (dpy, priv->window);
|
||||||
priv->window);
|
|
||||||
clutter_x11_untrap_x_errors ();
|
clutter_x11_untrap_x_errors ();
|
||||||
|
|
||||||
clutter_x11_texture_pixmap_set_pixmap (texture, pixmap);
|
clutter_x11_texture_pixmap_set_pixmap (texture, pixmap);
|
||||||
}
|
|
||||||
|
|
||||||
pixmap = priv->window;
|
if (prev_pixmap)
|
||||||
clutter_x11_texture_pixmap_set_pixmap (texture, pixmap);
|
XFreePixmap (dpy, prev_pixmap);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Loading…
x
Reference in New Issue
Block a user