mirror of
https://github.com/brl/mutter.git
synced 2025-04-29 21:29:40 +00:00
2008-06-30 Matthew Allum <mallum@openedhand.com>
Bug 1007 - Fix TFP fallback mechanism * clutter/glx/clutter-glx-texture-pixmap.c: * clutter/x11/clutter-x11-texture-pixmap.c: Add some extra safety to glx pixmap creations and tidy up some notes. Patch from Gwenole Beauchesne.
This commit is contained in:
parent
06d0696874
commit
7d59aa3da0
@ -1,3 +1,12 @@
|
|||||||
|
2008-06-30 Matthew Allum <mallum@openedhand.com>
|
||||||
|
|
||||||
|
Bug 1007 - Fix TFP fallback mechanism
|
||||||
|
|
||||||
|
* clutter/glx/clutter-glx-texture-pixmap.c:
|
||||||
|
* clutter/x11/clutter-x11-texture-pixmap.c:
|
||||||
|
Add some extra safety to glx pixmap creations and tidy up some notes.
|
||||||
|
Patch from Gwenole Beauchesne.
|
||||||
|
|
||||||
2008-06-30 Neil Roberts <neil@o-hand.com>
|
2008-06-30 Neil Roberts <neil@o-hand.com>
|
||||||
|
|
||||||
* clutter/x11/clutter-event-x11.c:
|
* clutter/x11/clutter-event-x11.c:
|
||||||
|
@ -499,7 +499,7 @@ clutter_glx_texture_pixmap_create_glx_pixmap (ClutterGLXTexturePixmap *texture)
|
|||||||
goto cleanup;
|
goto cleanup;
|
||||||
}
|
}
|
||||||
|
|
||||||
quality = clutter_texture_get_filter_quality (CLUTTER_TEXTURE(texture));
|
quality = clutter_texture_get_filter_quality (CLUTTER_TEXTURE (texture));
|
||||||
|
|
||||||
if (quality == CLUTTER_TEXTURE_QUALITY_HIGH)
|
if (quality == CLUTTER_TEXTURE_QUALITY_HIGH)
|
||||||
mipmap = 1;
|
mipmap = 1;
|
||||||
@ -523,7 +523,12 @@ clutter_glx_texture_pixmap_create_glx_pixmap (ClutterGLXTexturePixmap *texture)
|
|||||||
attribs);
|
attribs);
|
||||||
XSync (dpy, FALSE);
|
XSync (dpy, FALSE);
|
||||||
if (clutter_x11_untrap_x_errors ())
|
if (clutter_x11_untrap_x_errors ())
|
||||||
CLUTTER_NOTE (TEXTURE, "Failed to create GLXPixmap");
|
{
|
||||||
|
CLUTTER_NOTE (TEXTURE, "Failed to create GLXPixmap");
|
||||||
|
|
||||||
|
/* Make sure we don't think the call actually succeeded */
|
||||||
|
glx_pixmap = None;
|
||||||
|
}
|
||||||
|
|
||||||
g_free (fbconfig);
|
g_free (fbconfig);
|
||||||
|
|
||||||
@ -565,7 +570,7 @@ clutter_glx_texture_pixmap_update_area (ClutterX11TexturePixmap *texture,
|
|||||||
Display *dpy;
|
Display *dpy;
|
||||||
|
|
||||||
|
|
||||||
CLUTTER_NOTE (TEXTURE, "Updaing texture pixmap");
|
CLUTTER_NOTE (TEXTURE, "Updating texture pixmap");
|
||||||
|
|
||||||
priv = CLUTTER_GLX_TEXTURE_PIXMAP (texture)->priv;
|
priv = CLUTTER_GLX_TEXTURE_PIXMAP (texture)->priv;
|
||||||
dpy = clutter_x11_get_default_display();
|
dpy = clutter_x11_get_default_display();
|
||||||
@ -575,7 +580,7 @@ clutter_glx_texture_pixmap_update_area (ClutterX11TexturePixmap *texture,
|
|||||||
|
|
||||||
if (priv->use_fallback)
|
if (priv->use_fallback)
|
||||||
{
|
{
|
||||||
CLUTTER_NOTE (TEXTURE, "Falling back to X11..");
|
CLUTTER_NOTE (TEXTURE, "Falling back to X11");
|
||||||
parent_class->update_area (texture,
|
parent_class->update_area (texture,
|
||||||
x, y,
|
x, y,
|
||||||
width, height);
|
width, height);
|
||||||
|
@ -127,7 +127,7 @@ check_extensions (ClutterX11TexturePixmap *texture)
|
|||||||
if (!XDamageQueryExtension (dpy,
|
if (!XDamageQueryExtension (dpy,
|
||||||
&_damage_event_base, &damage_error))
|
&_damage_event_base, &damage_error))
|
||||||
{
|
{
|
||||||
g_warning ("No Damage extension\n");
|
g_warning ("No Damage extension");
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -213,7 +213,7 @@ try_alloc_shm (ClutterX11TexturePixmap *texture)
|
|||||||
goto failed_xshmattach;
|
goto failed_xshmattach;
|
||||||
|
|
||||||
if (clutter_x11_untrap_x_errors ())
|
if (clutter_x11_untrap_x_errors ())
|
||||||
g_warning ("X Error: Failed to setup XShm.");
|
g_warning ("X Error: Failed to setup XShm");
|
||||||
|
|
||||||
priv->have_shm = TRUE;
|
priv->have_shm = TRUE;
|
||||||
return TRUE;
|
return TRUE;
|
||||||
@ -230,7 +230,7 @@ failed_shmget:
|
|||||||
failed_image_create:
|
failed_image_create:
|
||||||
|
|
||||||
if (clutter_x11_untrap_x_errors ())
|
if (clutter_x11_untrap_x_errors ())
|
||||||
g_warning ("X Error: Failed to setup XShm.");
|
g_warning ("X Error: Failed to setup XShm");
|
||||||
|
|
||||||
priv->have_shm = FALSE;
|
priv->have_shm = FALSE;
|
||||||
return FALSE;
|
return FALSE;
|
||||||
@ -662,7 +662,7 @@ clutter_x11_texture_pixmap_update_area_real (ClutterX11TexturePixmap *texture,
|
|||||||
|
|
||||||
if ((err_code = clutter_x11_untrap_x_errors ()))
|
if ((err_code = clutter_x11_untrap_x_errors ()))
|
||||||
{
|
{
|
||||||
g_warning ("Failed to get XImage of pixmap: %lx, removing.",
|
g_warning ("Failed to get XImage of pixmap: %lx, removing",
|
||||||
priv->pixmap);
|
priv->pixmap);
|
||||||
/* safe to assume pixmap has gone away? - therefor reset */
|
/* safe to assume pixmap has gone away? - therefor reset */
|
||||||
clutter_x11_texture_pixmap_set_pixmap (texture, None);
|
clutter_x11_texture_pixmap_set_pixmap (texture, None);
|
||||||
@ -882,7 +882,7 @@ clutter_x11_texture_pixmap_set_pixmap (ClutterX11TexturePixmap *texture,
|
|||||||
if (clutter_x11_untrap_x_errors () || status == 0)
|
if (clutter_x11_untrap_x_errors () || status == 0)
|
||||||
{
|
{
|
||||||
if (pixmap != None)
|
if (pixmap != None)
|
||||||
g_warning ("Unable to query pixmap: %lx\n", pixmap);
|
g_warning ("Unable to query pixmap: %lx", pixmap);
|
||||||
pixmap = None;
|
pixmap = None;
|
||||||
width = height = depth = 0;
|
width = height = depth = 0;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user