HRESULT NINE_WINAPI NineTexture9_UnlockRect( struct NineTexture9 *This, UINT Level ) { DBG("This=%p Level=%u\n", This, Level); user_assert(Level <= This->base.base.info.last_level, D3DERR_INVALIDCALL); return NineSurface9_UnlockRect(This->surfaces[Level]); }
void NineSurface9_dtor( struct NineSurface9 *This ) { if (This->transfer) NineSurface9_UnlockRect(This); pipe_surface_reference(&This->surface[0], NULL); pipe_surface_reference(&This->surface[1], NULL); /* Release system memory when we have to manage it (no parent) */ if (!This->base.base.container && This->data) FREE(This->data); NineResource9_dtor(&This->base); }
HRESULT NINE_WINAPI NineCubeTexture9_UnlockRect( struct NineCubeTexture9 *This, D3DCUBEMAP_FACES FaceType, UINT Level ) { const unsigned s = Level * 6 + FaceType; DBG("This=%p FaceType=%d Level=%u\n", This, FaceType, Level); user_assert(Level <= This->base.base.info.last_level, D3DERR_INVALIDCALL); user_assert(FaceType < 6, D3DERR_INVALIDCALL); return NineSurface9_UnlockRect(This->surfaces[s]); }
void NineSurface9_dtor( struct NineSurface9 *This ) { DBG("This=%p\n", This); if (This->transfer) NineSurface9_UnlockRect(This); pipe_surface_reference(&This->surface[0], NULL); pipe_surface_reference(&This->surface[1], NULL); /* Release system memory when we have to manage it (no parent) */ if (!This->base.base.container && This->data) align_free(This->data); if (This->data_conversion) align_free(This->data_conversion); NineResource9_dtor(&This->base); }