reactos/sdk
winesync f6c4f5e79c [WINESYNC]d3dx9_36: Filter out D3DCompile warning messages that are not present with D3DCompileShader. (try 4)
This patch fixes vertex processing issue of bug 33770.

The problem comes from the fact that even if the call succeeds,
the game interprets a non null error_messages pointer as an error.

By calling D3DCompile we use a newer version of the compiler which is more
strict and generates the following warning.
  - warning X3206: 'dot': implicit truncation of vector type
  - warning X3206: implicit truncation of vector type
  - warning X3206: 'mul': implicit truncation of vector type
D3DCompileShader does not generate such warnings.

These is confirmed in the DX SDK release note:
New Warning X3206: Implicit Truncation of Vector Type
Beginning in the August 2009 release of the DirectX SDK, the compiler will warn
when an implicit truncation of a vector type occurs.

The warnings cannot be disable so this patch filters out these strings in D3DCompileShader
and reset the error messages pointer if the resulting buffer is empty.

Try 2:
  - only filter out lines containing "X3206:" in case d3dcompiler_43 has localization

Try 3:
  - use move in place instead of copying the buffer

Try 4:
  - filter simplification by Sebastian and remove 'mul' testing left-out in search string

wine-staging patch by Christian Costa <titan.costa@gmail.com>
2020-02-26 18:19:18 +01:00
..
cmake [CMAKE] Enable C4101 (unreferenced local variable) for MSVC builds. 2020-02-24 11:01:43 +01:00
include [WINESYNC]d3dx9_*: Add D3DXSHProjectCubeMap stub 2020-02-26 18:19:18 +01:00
lib [CMAKE] When disabling C4101, explicitly remove the error flag. 2020-02-24 22:29:33 +01:00
tools [WINESYNC]d3dx9_36: Filter out D3DCompile warning messages that are not present with D3DCompileShader. (try 4) 2020-02-26 18:19:18 +01:00