diff options
author | Philipp Zabel <[email protected]> | 2017-01-19 15:05:37 +0100 |
---|---|---|
committer | Lucas Stach <[email protected]> | 2017-01-20 15:30:29 +0100 |
commit | 2c95d6dac399ca58c5bf93f03cd4d19dc84c55af (patch) | |
tree | 7560ea031b6dc63c9b71b304f112707fdd38fc4c /src/gallium/state_trackers/dri/dri2.c | |
parent | 30853f55a3b4c409802ac470ae0530311c36e0c7 (diff) |
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 <[email protected]>
Reviewed-by: Marek Olšák <[email protected]>
Signed-off-by: Lucas Stach <[email protected]>
Diffstat (limited to 'src/gallium/state_trackers/dri/dri2.c')
-rw-r--r-- | src/gallium/state_trackers/dri/dri2.c | 4 |
1 files changed, 4 insertions, 0 deletions
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; |