gegl r2148 - in trunk: . gegl/buffer



Author: martinn
Date: Fri Mar 21 08:58:15 2008
New Revision: 2148
URL: http://svn.gnome.org/viewvc/gegl?rev=2148&view=rev

Log:
2008-03-21  Martin Nordholts  <martinn svn gnome org>

	* gegl/buffer/gegl-buffer.c (gegl_buffer_set): Make cleaner by
	making the function only have a single point of return.


Modified:
   trunk/ChangeLog
   trunk/gegl/buffer/gegl-buffer.c

Modified: trunk/gegl/buffer/gegl-buffer.c
==============================================================================
--- trunk/gegl/buffer/gegl-buffer.c	(original)
+++ trunk/gegl/buffer/gegl-buffer.c	Fri Mar 21 08:58:15 2008
@@ -1231,6 +1231,7 @@
   GeglBuffer *sub_buf;
 
   g_return_if_fail (GEGL_IS_BUFFER (buffer));
+
 #if ENABLE_MP
   g_static_rec_mutex_lock (&mutex);
 #endif
@@ -1244,26 +1245,22 @@
   if (rect && rect->width == 1 && rect->height == 1) /* fast path */
     {
       pset (buffer, rect->x, rect->y, format, src);
-#if ENABLE_MP
-      g_static_rec_mutex_unlock (&mutex);
-#endif
-      return;
     }
   /* FIXME: if rect->width == TILE_WIDTH and rect->height == TILE_HEIGHT and
    * aligned with tile grid, do a fast path, also provide helper functions
    * for getting the upper left coords of tiles.
    */
-  if (rect == NULL)
+  else if (rect == NULL)
     {
       gegl_buffer_iterate (buffer, src, rowstride, TRUE, format, 0);
-#if ENABLE_MP
-      g_static_rec_mutex_unlock (&mutex);
-#endif
-      return;
     }
-  sub_buf = gegl_buffer_create_sub_buffer (buffer, rect);
-  gegl_buffer_iterate (sub_buf, src, rowstride, TRUE, format, 0);
-  g_object_unref (sub_buf);
+  else
+    {
+      sub_buf = gegl_buffer_create_sub_buffer (buffer, rect);
+      gegl_buffer_iterate (sub_buf, src, rowstride, TRUE, format, 0);
+      g_object_unref (sub_buf);
+    }
+
 #if ENABLE_MP
   g_static_rec_mutex_unlock (&mutex);
 #endif



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