From: Philipp Zabel
Date: Thu, 19 Jan 2017 14:05:37 +0000 (+0100)
Subject: st/dri: ask the driver to update its internal copies on reimport
X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=2c95d6dac399ca58c5bf93f03cd4d19dc84c55af;p=mesa.git
st/dri: ask the driver to update its internal copies on reimport
For imported buffers that can't be used directly as a source to the
texture samplers, the pipe driver might need to create an internal
copy, for example in a different tiling layout. When buffers are
reimported they may contain new image data, so the driver internal
copies need to be recreated.
Signed-off-by: Philipp Zabel
Reviewed-by: Marek Olšák
Signed-off-by: Lucas Stach
---
diff --git a/src/gallium/state_trackers/dri/dri2.c b/src/gallium/state_trackers/dri/dri2.c
index 77523e98ffe..c4f2c57d1cf 100644
--- a/src/gallium/state_trackers/dri/dri2.c
+++ b/src/gallium/state_trackers/dri/dri2.c
@@ -1168,6 +1168,10 @@ dri2_from_planar(__DRIimage *image, int plane, void *loaderPrivate)
if (img == NULL)
return NULL;
+ if (img->texture->screen->resource_changed)
+ img->texture->screen->resource_changed(img->texture->screen,
+ img->texture);
+
/* set this to 0 for sub images. */
img->dri_components = 0;
return img;