Hi, While debugging some code I ran across the following situation:
- pipe_context c1 is created - pipe_surface s1 is created - strb-> surface is set to s1 (s1's refcount goes up) - pipe_context c1 is destroyed - strb is destroyed - strb->surface is destroyed (so s1's refcount is now 0 and we want to destroy it) At that point s1 references c1 which is not available any more, so when we try to call ctx->surface_destroy to destroy s1 we crash. We discussed this a bit on IRC, and we agreed that the proper solution, since surfaces outlive their context, is to make surfaces screen-bound instead. I'm going to implement that unless someone objects. As a side note, the same issue will happen with sampler_views, so it'll get a similar fix. Stéphane _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev