Tilman Sauerbeck wrote:
Hi,
alloc_shared_state() creates a hash table for ATI fragment shaders, but
free_shared_state() doesn't destroy it.
mesa-delete_atishaders.diff fixes this.
While looking at that code I also noticed that
ss->DefaultFragmentShader is destroyed by calling
_mesa_delete_ati_fragment_shader() in alloc_shared_state() (in the error
branch), but free_shared_state() just calls _mesa_free() on it.
mesa-delete_defaultatishader.diff makes free_shared_state() use
_mesa_delete_ati_fragment_shader(), too. It seems to be correct, but I
don't know for sure.
That second patch depends on the first.
You had the right idea. I also had to add code to actually free all
the shaders in the hash table too.
-Brian
-------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems? Stop! Download the new AJAX search engine that makes
searching your log files as easy as surfing the web. DOWNLOAD SPLUNK!
http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click
_______________________________________________
Mesa3d-dev mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mesa3d-dev