vlc/vlc-3.0 | branch: master | Steve Lhomme <rob...@ycbcr.xyz> | Thu Feb  8 
13:30:55 2018 +0100| [eb1295e704d5a4b794ddffb5bfcf3e2cc0b01b91] | committer: 
Jean-Baptiste Kempf

direct3d11: use D3D11_MAP_WRITE to update the shader constants

Otherwise the other fields are lost when updating one field

(cherry picked from commit 73b5de4394f0bc5e076c0514257b4b6417ed179b)
Signed-off-by: Jean-Baptiste Kempf <j...@videolan.org>

> http://git.videolan.org/gitweb.cgi/vlc/vlc-3.0.git/?a=commit;h=eb1295e704d5a4b794ddffb5bfcf3e2cc0b01b91
---

 modules/video_output/win32/direct3d11.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/modules/video_output/win32/direct3d11.c 
b/modules/video_output/win32/direct3d11.c
index 435ad00208..fa50bce6a7 100644
--- a/modules/video_output/win32/direct3d11.c
+++ b/modules/video_output/win32/direct3d11.c
@@ -1048,7 +1048,7 @@ static void UpdateQuadLuminanceScale(vout_display_t *vd, 
d3d_quad_t *quad, float
     if (quad->f_luminance_scale == luminanceScale)
         return;
 
-    HRESULT hr = ID3D11DeviceContext_Map(sys->d3d_dev.d3dcontext, 
(ID3D11Resource *)quad->pPixelShaderConstants[0], 0, D3D11_MAP_WRITE_DISCARD, 
0, &mappedResource);
+    HRESULT hr = ID3D11DeviceContext_Map(sys->d3d_dev.d3dcontext, 
(ID3D11Resource *)quad->pPixelShaderConstants[0], 0, D3D11_MAP_WRITE, 0, 
&mappedResource);
     if (SUCCEEDED(hr)) {
         PS_CONSTANT_BUFFER *dst_data = mappedResource.pData;
         quad->f_luminance_scale = luminanceScale;
@@ -2882,7 +2882,7 @@ static void UpdateQuadOpacity(vout_display_t *vd, const 
d3d_quad_t *quad, float
     vout_display_sys_t *sys = vd->sys;
     D3D11_MAPPED_SUBRESOURCE mappedResource;
 
-    HRESULT hr = ID3D11DeviceContext_Map(sys->d3d_dev.d3dcontext, 
(ID3D11Resource *)quad->pPixelShaderConstants[0], 0, D3D11_MAP_WRITE_DISCARD, 
0, &mappedResource);
+    HRESULT hr = ID3D11DeviceContext_Map(sys->d3d_dev.d3dcontext, 
(ID3D11Resource *)quad->pPixelShaderConstants[0], 0, D3D11_MAP_WRITE, 0, 
&mappedResource);
     if (SUCCEEDED(hr)) {
         PS_CONSTANT_BUFFER *dst_data = mappedResource.pData;
         dst_data->Opacity = opacity;

_______________________________________________
vlc-commits mailing list
vlc-commits@videolan.org
https://mailman.videolan.org/listinfo/vlc-commits

Reply via email to