[v4 1/4] d3dx9: Remove redundant parameter size check in set_constants().
Paul Gofman
gofmanp at gmail.com
Mon Jun 19 04:24:21 CDT 2017
Signed-off-by: Paul Gofman <gofmanp at gmail.com>
---
v4:
- added assert() for parameter size.
---
dlls/d3dx9_36/preshader.c | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/dlls/d3dx9_36/preshader.c b/dlls/d3dx9_36/preshader.c
index 2785ca3..76d6de9 100644
--- a/dlls/d3dx9_36/preshader.c
+++ b/dlls/d3dx9_36/preshader.c
@@ -1178,11 +1178,6 @@ static void set_constants(struct d3dx_regstore *rs, struct d3dx_const_tab *const
param_offset = i + j * info.major;
else
param_offset = i * info.minor + j;
- if (param_offset * sizeof(unsigned int) >= param->bytes)
- {
- WARN("Parameter data is too short, name %s, component %u.\n", debugstr_a(param->name), i);
- break;
- }
out[offset] = data[param_offset];
}
}
@@ -1303,6 +1298,11 @@ static HRESULT merge_const_set_entries(struct d3dx_const_tab *const_tab,
memmove(&const_tab->const_set[index + 1], &const_tab->const_set[i],
sizeof(*const_tab->const_set) * (const_tab->const_set_count - i));
const_tab->const_set_count -= i - index - 1;
+ assert(param->bytes >= table_info[first_const->table].component_size
+ * first_const->element_count
+ * (first_const->direct_copy ? get_reg_components(first_const->table)
+ * first_const->register_count
+ : first_const->param->rows * first_const->param->columns));
}
else
{
--
2.9.4
More information about the wine-patches
mailing list