Sorry for the late reply on this. Mailing lists are going to get more love now...
On 09/15/12 01:30, Poole, Bryce wrote: > d) When the window manager activates, it repaints, creating a surface and > flipping it. In my systems driver, this reactivates the layer so that the > layer isn't destroyed/released. There now exists a ghost/orphaned layer with > no interface. You mean the primary (shared) layer context/region keeps active? > e) Call IDirectFB_Release, it hits dfb_core_shutdown and calls > fusion_object_pool_destroy( shared->layer_region_pool, core->world ) and this > releases the context, but this happens after fusion is stopped and other > cleanup gets missed. > > So after calling IDirectFBLayer_Release, a context is activated that creates > an active layer with no way of releasing the final active context. I can't > seem to find where the final context is also released when the layer is > released. > > Any ideas on where to go next? I would need to investigate further and also want to optimise the layer context management, so that we no longer have implicit contexts for example. I think the evil function is dfb_layer_get_primary_context() that will create a static local (in master) reference to the context in layer->contexts.primary. -- Denis Oliver Kropp DirectFB integrated media GmbH _______________________________________________ directfb-dev mailing list directfb-dev@directfb.org http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-dev