Matteo Bruni (@Mystral) commented about dlls/d3dx10_43/compiler.c:
if (pump) FIXME("Asynchronous mode is not supported.\n");
- if (!include) - include = D3D_COMPILE_STANDARD_FILE_INCLUDE; - - if (FAILED(hr = D3DCompile(data, datasize, filename, defines, include, "main", profile, - shader_flags, effect_flags, &code, errors))) + if (datasize >= sizeof(DWORD) && ((const DWORD *)data)[0] == TAG_DXBC) { - WARN("Effect compilation failed, hr %#lx.\n", hr); - return hr; + hr = D3D10CreateEffectFromMemory((char *)data, datasize,
So, this gets rid of the const. I'm 99.9% sure it's just the prototype of D3D10CreateEffectFromMemory() being silly but it might be a good idea to make sure and test that it doesn't actually modify the data passed into the function on Windows... -- https://gitlab.winehq.org/wine/wine/-/merge_requests/332#note_3151