Hi all, This patch series add per-thread info support to libEGL and fix resource releasing on display termination.
The first two patches introduce per-thread info and per-api current context respectively. It uses TLS or pthread if available. The next two patches introduce "links". Resources are, other than weak referenced by the thread binding them, strong referenced (linked) by their displays. A strong referenced context or surface is valid, in that it can be looked up, queried, or bound. On the other hand, a weak referenced context or surface is invalid. It cannot be looked up nor bound. It is destroyed once the weak reference is gone. With the two patches preparing the work, it becomes easier to implement resource releasing on eglTerminate. This is implemented in the 6th patch. The rest of the patches either fix minor bugs or clean up the code. They are tested with xeglthreads, using egl_softpipe.so and egl_glx.so. Beyond this series, I plan to work on cleaning up driver choosing, adding more error checking, and adding mutex support (EGL should be thread-safe). ------------------------------------------------------------------------------ Enter the BlackBerry Developer Challenge This is your chance to win up to $100,000 in prizes! For a limited time, vendors submitting new applications to BlackBerry App World(TM) will have the opportunity to enter the BlackBerry Developer Challenge. See full prize details at: http://p.sf.net/sfu/Challenge _______________________________________________ Mesa3d-dev mailing list Mesa3d-dev@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mesa3d-dev