gimp r25736 - in trunk: . app/core



Author: mitch
Date: Wed May 21 18:50:13 2008
New Revision: 25736
URL: http://svn.gnome.org/viewvc/gimp?rev=25736&view=rev

Log:
2008-05-21  Michael Natterer  <mitch gimp org>

	* app/core/gimpdrawable-process.c (gimp_drawable_process): add
	missing include and missing call to gimp_drawable_mask_intersect().



Modified:
   trunk/ChangeLog
   trunk/app/core/gimpdrawable-process.c

Modified: trunk/app/core/gimpdrawable-process.c
==============================================================================
--- trunk/app/core/gimpdrawable-process.c	(original)
+++ trunk/app/core/gimpdrawable-process.c	Wed May 21 18:50:13 2008
@@ -26,9 +26,11 @@
 #include "base/pixel-region.h"
 
 #include "gimpdrawable.h"
+#include "gimpdrawable-process.h"
 #include "gimpdrawable-shadow.h"
 #include "gimpprogress.h"
 
+
 void
 gimp_drawable_process (GimpDrawable       *drawable,
                        GimpProgress       *progress,
@@ -36,22 +38,26 @@
                        PixelProcessorFunc  func,
                        gpointer            data)
 {
-  PixelRegion  srcPR, destPR;
-  gint         x, y, width, height;
+  gint x, y, width, height;
 
   g_return_if_fail (GIMP_IS_DRAWABLE (drawable));
   g_return_if_fail (gimp_item_is_attached (GIMP_ITEM (drawable)));
   g_return_if_fail (progress == NULL || GIMP_IS_PROGRESS (progress));
 
-  pixel_region_init (&srcPR, gimp_drawable_get_tiles (drawable),
-                     x, y, width, height, FALSE);
-  pixel_region_init (&destPR, gimp_drawable_get_shadow_tiles (drawable),
-                     x, y, width, height, TRUE);
+  if (gimp_drawable_mask_intersect (drawable, &x, &y, &width, &height))
+    {
+      PixelRegion srcPR, destPR;
+
+      pixel_region_init (&srcPR, gimp_drawable_get_tiles (drawable),
+                         x, y, width, height, FALSE);
+      pixel_region_init (&destPR, gimp_drawable_get_shadow_tiles (drawable),
+                         x, y, width, height, TRUE);
 
-  pixel_regions_process_parallel (func, data, 2, &srcPR, &destPR);
+      pixel_regions_process_parallel (func, data, 2, &srcPR, &destPR);
 
-  gimp_drawable_merge_shadow_tiles (drawable, TRUE, undo_desc);
-  gimp_drawable_free_shadow_tiles (drawable);
+      gimp_drawable_merge_shadow_tiles (drawable, TRUE, undo_desc);
+      gimp_drawable_free_shadow_tiles (drawable);
 
-  gimp_drawable_update (drawable, x, y, width, height);
+      gimp_drawable_update (drawable, x, y, width, height);
+    }
 }



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]