mirror of
https://github.com/reactos/reactos.git
synced 2024-08-14 07:06:23 +00:00
[WINED3D] Dereference context slightly later, as seen in wine. This prevents some crashes while applications are starting up. (f.e. ANNO1602)
svn path=/trunk/; revision=75621
This commit is contained in:
parent
f5aed8f8c1
commit
fe4d4aa690
|
@ -2714,12 +2714,14 @@ void context_bind_texture(struct wined3d_context *context, GLenum target, GLuint
|
||||||
void *context_map_bo_address(struct wined3d_context *context,
|
void *context_map_bo_address(struct wined3d_context *context,
|
||||||
const struct wined3d_bo_address *data, size_t size, GLenum binding, DWORD flags)
|
const struct wined3d_bo_address *data, size_t size, GLenum binding, DWORD flags)
|
||||||
{
|
{
|
||||||
const struct wined3d_gl_info *gl_info = context->gl_info;
|
const struct wined3d_gl_info *gl_info;
|
||||||
BYTE *memory;
|
BYTE *memory;
|
||||||
|
|
||||||
if (!data->buffer_object)
|
if (!data->buffer_object)
|
||||||
return data->addr;
|
return data->addr;
|
||||||
|
|
||||||
|
gl_info = context->gl_info;
|
||||||
|
|
||||||
context_bind_bo(context, binding, data->buffer_object);
|
context_bind_bo(context, binding, data->buffer_object);
|
||||||
|
|
||||||
if (gl_info->supported[ARB_MAP_BUFFER_RANGE])
|
if (gl_info->supported[ARB_MAP_BUFFER_RANGE])
|
||||||
|
@ -2742,11 +2744,13 @@ void *context_map_bo_address(struct wined3d_context *context,
|
||||||
void context_unmap_bo_address(struct wined3d_context *context,
|
void context_unmap_bo_address(struct wined3d_context *context,
|
||||||
const struct wined3d_bo_address *data, GLenum binding)
|
const struct wined3d_bo_address *data, GLenum binding)
|
||||||
{
|
{
|
||||||
const struct wined3d_gl_info *gl_info = context->gl_info;
|
const struct wined3d_gl_info *gl_info;
|
||||||
|
|
||||||
if (!data->buffer_object)
|
if (!data->buffer_object)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
gl_info = context->gl_info;
|
||||||
|
|
||||||
context_bind_bo(context, binding, data->buffer_object);
|
context_bind_bo(context, binding, data->buffer_object);
|
||||||
GL_EXTCALL(glUnmapBuffer(binding));
|
GL_EXTCALL(glUnmapBuffer(binding));
|
||||||
context_bind_bo(context, binding, 0);
|
context_bind_bo(context, binding, 0);
|
||||||
|
|
Loading…
Reference in a new issue