[PATCH 0/1] MR11227: opengl32: Only reserve name range if range length is > 0.
From: Rémi Bernon <rbernon@codeweavers.com> --- dlls/opengl32/make_opengl | 2 +- dlls/opengl32/thunks.c | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/dlls/opengl32/make_opengl b/dlls/opengl32/make_opengl index fcca05838bf..5ddd16af0da 100755 --- a/dlls/opengl32/make_opengl +++ b/dlls/opengl32/make_opengl @@ -901,7 +901,7 @@ sub generate_win_thunk($$) } if (my $map_type = get_object_type( $name, $func_ret, "ret", get_arg_class( $func->[0] ) )) { - $post_call .= " args.ret = put_context_object_range( $map_type, range, args.ret );\n" if $name =~ /^glGen/; + $post_call .= " if (range > 0) args.ret = put_context_object_range( $map_type, range, args.ret );\n" if $name =~ /^glGen/; $post_call .= " put_context_objects( $map_type, 1, &args.ret );\n" if $name =~ /^glCreate/; } $ret .= " struct $name\_params args = {$params };\n"; diff --git a/dlls/opengl32/thunks.c b/dlls/opengl32/thunks.c index 1c471268d8b..7d4efe25ac7 100644 --- a/dlls/opengl32/thunks.c +++ b/dlls/opengl32/thunks.c @@ -831,7 +831,7 @@ GLuint WINAPI glGenLists( GLsizei range ) NTSTATUS status; TRACE( "range %d\n", range ); if ((status = UNIX_CALL( glGenLists, &args ))) WARN( "glGenLists returned %#lx\n", status ); - args.ret = put_context_object_range( OBJ_TYPE_DISPLAY_LIST, range, args.ret ); + if (range > 0) args.ret = put_context_object_range( OBJ_TYPE_DISPLAY_LIST, range, args.ret ); return args.ret; } @@ -7844,7 +7844,7 @@ static GLuint WINAPI glGenFragmentShadersATI( GLuint range ) NTSTATUS status; TRACE( "range %d\n", range ); if ((status = UNIX_CALL( glGenFragmentShadersATI, &args ))) WARN( "glGenFragmentShadersATI returned %#lx\n", status ); - args.ret = put_context_object_range( OBJ_TYPE_SHADER_ATI, range, args.ret ); + if (range > 0) args.ret = put_context_object_range( OBJ_TYPE_SHADER_ATI, range, args.ret ); return args.ret; } @@ -7888,7 +7888,7 @@ static GLuint WINAPI glGenPathsNV( GLsizei range ) NTSTATUS status; TRACE( "range %d\n", range ); if ((status = UNIX_CALL( glGenPathsNV, &args ))) WARN( "glGenPathsNV returned %#lx\n", status ); - args.ret = put_context_object_range( OBJ_TYPE_PATH, range, args.ret ); + if (range > 0) args.ret = put_context_object_range( OBJ_TYPE_PATH, range, args.ret ); return args.ret; } @@ -8042,7 +8042,7 @@ static GLuint WINAPI glGenVertexShadersEXT( GLuint range ) NTSTATUS status; TRACE( "range %d\n", range ); if ((status = UNIX_CALL( glGenVertexShadersEXT, &args ))) WARN( "glGenVertexShadersEXT returned %#lx\n", status ); - args.ret = put_context_object_range( OBJ_TYPE_SHADER_EXT, range, args.ret ); + if (range > 0) args.ret = put_context_object_range( OBJ_TYPE_SHADER_EXT, range, args.ret ); return args.ret; } -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/11227
participants (2)
-
Rémi Bernon -
Rémi Bernon (@rbernon)