app: do not render many tiles twice

removing the area that is going to be rendered from the dirty area
before rendering it, prevents tile-handler-projection to render it
again.

This was the reason why caching showed an improvement also during
the construction of the projection. And it was a regression that
I introduced in a previous commit
This commit is contained in:
Massimo Valentini 2013-08-11 08:49:38 +02:00
parent 370ea9ae10
commit 8ec824f158
1 changed files with 3 additions and 3 deletions

View File

@ -702,12 +702,12 @@ gimp_projection_paint_area (GimpProjection *proj,
{
GeglNode *graph = gimp_projectable_get_graph (proj->projectable);
gegl_node_blit_buffer (graph, proj->buffer,
GEGL_RECTANGLE (x1, y1, x2 - x1, y2 - y1));
if (proj->validate_handler)
gimp_tile_handler_projection_undo_invalidate (proj->validate_handler,
x1, y1, x2 - x1, y2 - y1);
gegl_node_blit_buffer (graph, proj->buffer,
GEGL_RECTANGLE (x1, y1, x2 - x1, y2 - y1));
}
/* add the projectable's offsets because the list of update areas