[gimp] app: use gegl_buffer_copy() in gimp_drawable_real_push_undo()
- From: Michael Natterer <mitch src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gimp] app: use gegl_buffer_copy() in gimp_drawable_real_push_undo()
- Date: Wed, 2 May 2012 16:00:35 +0000 (UTC)
commit 8ba8710982abc06253c85aeb3f80bd3871d91a0e
Author: Michael Natterer <mitch gimp org>
Date: Thu Mar 15 12:30:41 2012 +0100
app: use gegl_buffer_copy() in gimp_drawable_real_push_undo()
app/core/gimpdrawable.c | 21 +++++++++++++++------
1 files changed, 15 insertions(+), 6 deletions(-)
---
diff --git a/app/core/gimpdrawable.c b/app/core/gimpdrawable.c
index 78d4057..5c03540 100644
--- a/app/core/gimpdrawable.c
+++ b/app/core/gimpdrawable.c
@@ -921,14 +921,23 @@ gimp_drawable_real_push_undo (GimpDrawable *drawable,
if (! tiles)
{
- PixelRegion srcPR, destPR;
+ GeglBuffer *dest_buffer;
+ GeglRectangle src_rect;
+ GeglRectangle dest_rect = { 0, };
tiles = tile_manager_new (width, height, gimp_drawable_bytes (drawable));
- pixel_region_init (&srcPR, gimp_drawable_get_tiles (drawable),
- x, y, width, height, FALSE);
- pixel_region_init (&destPR, tiles,
- 0, 0, width, height, TRUE);
- copy_region (&srcPR, &destPR);
+
+ dest_buffer = gimp_tile_manager_create_buffer (tiles, TRUE);
+
+ src_rect.x = x;
+ src_rect.y = y;
+ src_rect.width = width;
+ src_rect.height = height;
+
+ gegl_buffer_copy (gimp_drawable_get_read_buffer (drawable), &src_rect,
+ dest_buffer, &dest_rect);
+
+ g_object_unref (dest_buffer);
new_tiles = TRUE;
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]