summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/svga/svga_screen_texture.h
diff options
context:
space:
mode:
authorJosé Fonseca <jfonseca@vmware.com>2009-12-11 12:29:02 +0000
committerJosé Fonseca <jfonseca@vmware.com>2009-12-11 12:29:02 +0000
commit16876b8328059446b6fa0951f7848e5d500244ab (patch)
treec7df0762277bd5cca7ac8739f58e808bb5438fa7 /src/gallium/drivers/svga/svga_screen_texture.h
parent770323e33e62169827454af74e9f90f09997f962 (diff)
svga: Keep tight control of texture handle ownership.
The texture owns the surface handle. All derivatives need to keep a reference to texture. This fixes several assertions failures starting up Jedi Knight 2. Should cause no change for DRM surface sharing -- reference count still done as before there.
Diffstat (limited to 'src/gallium/drivers/svga/svga_screen_texture.h')
-rw-r--r--src/gallium/drivers/svga/svga_screen_texture.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/gallium/drivers/svga/svga_screen_texture.h b/src/gallium/drivers/svga/svga_screen_texture.h
index 1cc4063e65..8cfdfea693 100644
--- a/src/gallium/drivers/svga/svga_screen_texture.h
+++ b/src/gallium/drivers/svga/svga_screen_texture.h
@@ -61,7 +61,7 @@ struct svga_sampler_view
{
struct pipe_reference reference;
- struct svga_texture *texture;
+ struct pipe_texture *texture;
int min_lod;
int max_lod;
@@ -94,6 +94,13 @@ struct svga_texture
* operation.
*/
struct svga_host_surface_cache_key key;
+
+ /**
+ * Handle for the host side surface.
+ *
+ * This handle is owned by this texture. Views should hold on to a reference
+ * to this texture and never destroy this handle directly.
+ */
struct svga_winsys_surface *handle;
};