diff --git a/cogl/cogl-texture.c b/cogl/cogl-texture.c index 698950084..4ea6eb3e2 100644 --- a/cogl/cogl-texture.c +++ b/cogl/cogl-texture.c @@ -1366,6 +1366,7 @@ _cogl_texture_spans_foreach_in_region (CoglSpan *x_spans, CoglSpanIter iter_x; CoglSpanIter iter_y; float slice_coords[4]; + float span_virtual_coords[4]; /* Iterate the y axis of the virtual rectangle */ for (_cogl_span_iter_begin (&iter_y, @@ -1382,11 +1383,15 @@ _cogl_texture_spans_foreach_in_region (CoglSpan *x_spans, { slice_coords[1] = iter_y.intersect_end; slice_coords[3] = iter_y.intersect_start; + span_virtual_coords[1] = iter_y.intersect_end; + span_virtual_coords[3] = iter_y.intersect_start; } else { slice_coords[1] = iter_y.intersect_start; slice_coords[3] = iter_y.intersect_end; + span_virtual_coords[1] = iter_y.intersect_start; + span_virtual_coords[3] = iter_y.intersect_end; } /* Map the current intersection to normalized slice coordinates */ @@ -1405,17 +1410,20 @@ _cogl_texture_spans_foreach_in_region (CoglSpan *x_spans, _cogl_span_iter_next (&iter_x)) { CoglTexture *span_tex; - float span_virtual_coords[4]; if (iter_x.flipped) { slice_coords[0] = iter_x.intersect_end; slice_coords[2] = iter_x.intersect_start; + span_virtual_coords[0] = iter_x.intersect_end; + span_virtual_coords[2] = iter_x.intersect_start; } else { slice_coords[0] = iter_x.intersect_start; slice_coords[2] = iter_x.intersect_end; + span_virtual_coords[0] = iter_x.intersect_start; + span_virtual_coords[2] = iter_x.intersect_end; } /* Map the current intersection to normalized slice coordinates */ @@ -1425,11 +1433,6 @@ _cogl_texture_spans_foreach_in_region (CoglSpan *x_spans, /* Pluck out the cogl texture for this span */ span_tex = textures[iter_y.index * n_x_spans + iter_x.index]; - span_virtual_coords[0] = iter_x.intersect_start; - span_virtual_coords[1] = iter_y.intersect_start; - span_virtual_coords[2] = iter_x.intersect_end; - span_virtual_coords[3] = iter_y.intersect_end; - callback (COGL_TEXTURE (span_tex), slice_coords, span_virtual_coords, diff --git a/tests/conform/test-conform-main.c b/tests/conform/test-conform-main.c index 38b53a197..643a59e3f 100644 --- a/tests/conform/test-conform-main.c +++ b/tests/conform/test-conform-main.c @@ -59,7 +59,7 @@ main (int argc, char **argv) ADD_TEST (test_path, 0, 0); ADD_TEST (test_depth_test, 0, 0); ADD_TEST (test_color_mask, 0, 0); - ADD_TEST (test_backface_culling, 0, TEST_REQUIREMENT_NPOT); + ADD_TEST (test_backface_culling, 0, 0); ADD_TEST (test_layer_remove, 0, 0); ADD_TEST (test_sparse_pipeline, 0, 0);