Am Sonntag, 16. März 2008 17:22:52 schrieb Cihan Altinay:
Stefan Dösinger wrote:
Am Sonntag, 16. März 2008 14:44:37 schrieb bobbyg@gmx.net: I think it would be better to set pal = NULL if there is no wined3d palette returned a few lines above the place you're changing.
That's fine with me but it would mean setting it to NULL in every iteration instead of only when necessary.
I don't think this code is highly performance critical, as it is usually called during loading. If you set it to NULL there you'll always set the palette that is used rather than relying that the previous iteration left a correct palette(maybe NULL) set.
While tracing this bug I noticed that IWineD3DBaseSurfaceImpl_GetPalette() does not call AddRef when returning the palette. Is that intentional?
This looks like it needs a fix
Ok, I'll add that to the same patch since the problem is related.
If one patch works without the other please send separate patches.