2008-05-13 Emmanuele Bassi <ebassi@openedhand.com>

* clutter/glx/clutter-stage-glx.c:
	(clutter_stage_glx_unrealize): Move the shaders release from here...

	* clutter/glx/clutter-backend-glx.c:
	(clutter_backend_glx_dispose): ... to here. Shaders should be
	released when the GL context is being destroyed, and that only
	happens when the backend is being disposed, now that we support
	multiple stages.
This commit is contained in:
Emmanuele Bassi 2008-05-13 10:42:36 +00:00
parent 87ccdacdaf
commit d141f781ec
3 changed files with 14 additions and 3 deletions

View File

@ -1,3 +1,14 @@
2008-05-13 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/glx/clutter-stage-glx.c:
(clutter_stage_glx_unrealize): Move the shaders release from here...
* clutter/glx/clutter-backend-glx.c:
(clutter_backend_glx_dispose): ... to here. Shaders should be
released when the GL context is being destroyed, and that only
happens when the backend is being disposed, now that we support
multiple stages.
2008-05-13 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-backend.c:

View File

@ -176,6 +176,9 @@ clutter_backend_glx_dispose (GObject *gobject)
ClutterBackendGLX *backend_glx = CLUTTER_BACKEND_GLX (gobject);
ClutterBackendX11 *backend_x11 = CLUTTER_BACKEND_X11 (gobject);
/* Unrealize all shaders, since the GL context is going away */
_clutter_shader_release_all ();
if (backend_glx->gl_context)
{
glXDestroyContext (backend_x11->xdpy, backend_glx->gl_context);

View File

@ -74,9 +74,6 @@ clutter_stage_glx_unrealize (ClutterActor *actor)
clutter_x11_trap_x_errors ();
/* Unrealize all shaders, since the GL context is going away */
_clutter_shader_release_all ();
if (G_UNLIKELY (was_offscreen))
{
if (stage_glx->glxpixmap)