On 9 September 2013 12:56, Stefan Dösinger <stefan(a)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?