Signed-off-by: Henri Verbeet hverbeet@codeweavers.com --- dlls/wined3d/surface.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/dlls/wined3d/surface.c b/dlls/wined3d/surface.c index c82da87..4a7ed19 100644 --- a/dlls/wined3d/surface.c +++ b/dlls/wined3d/surface.c @@ -2441,9 +2441,10 @@ static BOOL surface_load_renderbuffer(struct wined3d_surface *surface, struct wi DWORD dst_location) { struct wined3d_texture *texture = surface->container; + unsigned int level = surface_get_sub_resource_idx(surface) % texture->level_count; const RECT rect = {0, 0, - wined3d_texture_get_level_width(texture, surface->texture_level), - wined3d_texture_get_level_height(texture, surface->texture_level)}; + wined3d_texture_get_level_width(texture, level), + wined3d_texture_get_level_height(texture, level)}; DWORD locations = surface_get_sub_resource(surface)->locations; DWORD src_location;