Hi. I just put it nearby other somewhat related calls. This code doesn't really need ENTER_GL/LEAVE_GL, but there's a bigger problem that this ENTER_GL/LEAVE_GL in PreLoad is around other routines too that mostly don't need it and leads to ActivateContext being called inside it etc. I've already sent a patch to remove ENTER_GL/LEAVE_GL in PreLoad, but it wasn't fully ok. I plan to fix and resend the latter patch after issues are taken care of (a bit of lack of consistency with holding / not-holding the lock in LoadLocation and its helper routines).
Stefan Dösinger wrote: > Am Freitag, 28. März 2008 20:34:11 schrieb Alexander Dorofeyev: >> ENTER_GL(); >> + if (This->resource.format == WINED3DFMT_P8 || This->resource.format == >> WINED3DFMT_A8P8) { >> + for (i = 0; i < This->baseTexture.levels; i++) { >> + if(palette9_changed((IWineD3DSurfaceImpl *)This->surfaces[i])){ > Why are you doing this inside ENTER_GL? I think LoadLocation locks on its own.