mirror of
https://github.com/brl/mutter.git
synced 2024-12-24 12:02:04 +00:00
Fix rectangles_with_multitexture_coords for sliced without tex coords
When the texture is sliced it drops back to a fallback function and passes it the texture coordinates from the rectangle. However if no tex coords are given it would crash. Now it passes the default 0.0->1.0 tex coords instead.
This commit is contained in:
parent
7df1987652
commit
eda1d08f76
@ -2674,14 +2674,21 @@ _cogl_rectangles_with_multitexture_coords (
|
|||||||
first_layer = layers->data;
|
first_layer = layers->data;
|
||||||
tex_handle = cogl_material_layer_get_texture (first_layer);
|
tex_handle = cogl_material_layer_get_texture (first_layer);
|
||||||
texture = _cogl_texture_pointer_from_handle (tex_handle);
|
texture = _cogl_texture_pointer_from_handle (tex_handle);
|
||||||
_cogl_texture_sliced_quad (texture,
|
if (rects[i].tex_coords)
|
||||||
material,
|
_cogl_texture_sliced_quad (texture,
|
||||||
rects[i].x_1, rects[i].y_1,
|
material,
|
||||||
rects[i].x_2, rects[i].y_2,
|
rects[i].x_1, rects[i].y_1,
|
||||||
rects[i].tex_coords[0],
|
rects[i].x_2, rects[i].y_2,
|
||||||
rects[i].tex_coords[1],
|
rects[i].tex_coords[0],
|
||||||
rects[i].tex_coords[2],
|
rects[i].tex_coords[1],
|
||||||
rects[i].tex_coords[3]);
|
rects[i].tex_coords[2],
|
||||||
|
rects[i].tex_coords[3]);
|
||||||
|
else
|
||||||
|
_cogl_texture_sliced_quad (texture,
|
||||||
|
material,
|
||||||
|
rects[i].x_1, rects[i].y_1,
|
||||||
|
rects[i].x_2, rects[i].y_2,
|
||||||
|
0.0f, 0.0f, 1.0f, 1.0f);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2784,14 +2784,21 @@ _cogl_rectangles_with_multitexture_coords (
|
|||||||
tex_handle =
|
tex_handle =
|
||||||
cogl_material_layer_get_texture ((CoglHandle)layers->data);
|
cogl_material_layer_get_texture ((CoglHandle)layers->data);
|
||||||
texture = _cogl_texture_pointer_from_handle (tex_handle);
|
texture = _cogl_texture_pointer_from_handle (tex_handle);
|
||||||
_cogl_texture_sliced_quad (texture,
|
if (rects[i].tex_coords)
|
||||||
material,
|
_cogl_texture_sliced_quad (texture,
|
||||||
rects[i].x1, rects[i].y1,
|
material,
|
||||||
rects[i].x2, rects[i].y2,
|
rects[i].x1, rects[i].y1,
|
||||||
rects[i].tex_coords[0],
|
rects[i].x2, rects[i].y2,
|
||||||
rects[i].tex_coords[1],
|
rects[i].tex_coords[0],
|
||||||
rects[i].tex_coords[2],
|
rects[i].tex_coords[1],
|
||||||
rects[i].tex_coords[3]);
|
rects[i].tex_coords[2],
|
||||||
|
rects[i].tex_coords[3]);
|
||||||
|
else
|
||||||
|
_cogl_texture_sliced_quad (texture,
|
||||||
|
material,
|
||||||
|
rects[i].x1, rects[i].y1,
|
||||||
|
rects[i].x2, rects[i].y2,
|
||||||
|
0.0f, 0.0f, 1.0f, 1.0f);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user