On 9 September 2013 12:56, Stefan Dösinger stefan@codeweavers.com wrote:
I think this patch does a couple of things at once, and would probably benefit from being broken up.
static struct arb_vs_compiled_shader *find_arb_vshader(struct wined3d_shader *shader,
const struct arb_vs_compile_args *args,
const struct wined3d_context *context, const struct arb_vs_compile_args *args, const struct wined3d_shader_signature_element *ps_input_sig)
I think it makes more sense to pass a wined3d_stream_info structure here instead of a context, or perhaps even just the use_map field.
-static BOOL buffer_find_decl(struct wined3d_buffer *This) +static BOOL buffer_find_decl(struct wined3d_buffer *This, const struct wined3d_context *context)
Same.
diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h index 23d32c2..f7ded75 100644 --- a/dlls/wined3d/wined3d_private.h +++ b/dlls/wined3d/wined3d_private.h @@ -1086,6 +1086,7 @@ struct wined3d_context DWORD padding : 1; DWORD texShaderBumpMap : 8; /* MAX_TEXTURES, 8 */ DWORD lastWasPow2Texture : 8; /* MAX_TEXTURES, 8 */
- DWORD use_draw_strided_slow : 1; DWORD shader_update_mask; DWORD constant_update_mask; DWORD numbered_array_mask;
I think that's an unfortunate place to insert the field, and you should update the padding.
@@ -1880,9 +1889,7 @@ struct wined3d_device WORD d3d_initialized : 1; WORD inScene : 1; /* A flag to check for proper BeginScene / EndScene call pairs */ WORD softwareVertexProcessing : 1; /* process vertex shaders using software or hardware */
- WORD useDrawStridedSlow : 1; WORD filter_messages : 1;
- WORD padding : 8;
Padding?