From 792af626d4e82dae728801ee6ca8c4c0f3d37f68 Mon Sep 17 00:00:00 2001 From: Patrick Rudolph Date: Fri, 16 Jan 2015 08:17:07 +0100 Subject: st/nine: Check for aligned offset in each vertex element Fixes wine test test_vertex_declaration_alignment() Reviewed-by: Axel Davy Signed-off-by: Patrick Rudolph --- src/gallium/state_trackers/nine/vertexdeclaration9.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src/gallium/state_trackers/nine') diff --git a/src/gallium/state_trackers/nine/vertexdeclaration9.c b/src/gallium/state_trackers/nine/vertexdeclaration9.c index 49e5937a52e..9e4cb55bc67 100644 --- a/src/gallium/state_trackers/nine/vertexdeclaration9.c +++ b/src/gallium/state_trackers/nine/vertexdeclaration9.c @@ -184,8 +184,10 @@ NineVertexDeclaration9_ctor( struct NineVertexDeclaration9 *This, /* wine */ for (This->nelems = 0; pElements[This->nelems].Stream != 0xFF; - ++This->nelems) + ++This->nelems) { user_assert(pElements[This->nelems].Type != D3DDECLTYPE_UNUSED, E_FAIL); + user_assert(!(pElements[This->nelems].Offset & 3), E_FAIL); + } caps = NineDevice9_GetCaps(This->base.device); user_assert(This->nelems <= caps->MaxStreams, D3DERR_INVALIDCALL); -- cgit v1.2.3