Commit 60ce80e6 authored by Fan WenJie's avatar Fan WenJie Committed by Alexandre Julliard

opengl32: Fix missing conversion of glUnmapBuffer_params from 32bit to 64bit.

parent 61783105
......@@ -2043,14 +2043,20 @@ static NTSTATUS wow64_gl_unmap_buffer( void *args, NTSTATUS (*gl_unmap_buffer64)
GLenum target;
GLboolean ret;
} *params32 = args;
struct glUnmapBuffer_params params =
{
.teb = get_teb64(params32->teb),
.target = params32->target,
.ret = TRUE,
};
NTSTATUS status;
TEB *teb = get_teb64( params32->teb );
if (!(ptr = get_buffer_pointer( teb, params32->target ))) return STATUS_SUCCESS;
if (!(ptr = get_buffer_pointer( params.teb, params.target ))) return STATUS_SUCCESS;
status = wow64_unmap_buffer( ptr, get_buffer_param( teb, params32->target, GL_BUFFER_MAP_LENGTH ),
get_buffer_param( teb, params32->target, GL_BUFFER_ACCESS_FLAGS ) );
gl_unmap_buffer64( args );
status = wow64_unmap_buffer( ptr, get_buffer_param( params.teb, params.target, GL_BUFFER_MAP_LENGTH ),
get_buffer_param( params.teb, params.target, GL_BUFFER_ACCESS_FLAGS ) );
gl_unmap_buffer64( &params );
params32->ret = params.ret;
return status;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment