gegl r2174 - in trunk: . gegl/buffer



Author: ok
Date: Tue Apr 15 01:34:11 2008
New Revision: 2174
URL: http://svn.gnome.org/viewvc/gegl?rev=2174&view=rev

Log:
* gegl/buffer/gegl-storage.c: remove idle swapper in finalize.


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

Modified: trunk/gegl/buffer/gegl-storage.c
==============================================================================
--- trunk/gegl/buffer/gegl-storage.c	(original)
+++ trunk/gegl/buffer/gegl-storage.c	Tue Apr 15 01:34:11 2008
@@ -185,7 +185,7 @@
 
   if (storage->path != NULL)
     {
-#if 1
+#if 0
       g_object_set (storage,
                     "source", g_object_new (GEGL_TYPE_TILE_DISK,
                                             "tile-width", storage->tile_width,
@@ -229,22 +229,22 @@
    * to get a better gauge of memory use (ideally we would want to make
    * to adapt to an approximate number of bytes to be allocated)
    */
+
   if (1) 
     cache = gegl_handlers_add (handlers, g_object_new (GEGL_TYPE_HANDLER_CACHE,
-                                                       "size", 256,
+                                                       "size", 128,
                                                        NULL));
   if (g_getenv("GEGL_LOG_TILE_CACHE"))
     gegl_handlers_add (handlers, g_object_new (GEGL_TYPE_HANDLER_LOG, NULL));
 
-
   if (1) gegl_handlers_add (handlers, g_object_new (GEGL_TYPE_HANDLER_ZOOM,
                                                   "backend", handler->source,
                                                   "storage", storage,
                                                   NULL));
-
   if (g_getenv("GEGL_LOG_TILE_ZOOM"))
     gegl_handlers_add (handlers, g_object_new (GEGL_TYPE_HANDLER_LOG, NULL));
 
+
   /* moved here to allow sharing between buffers (speeds up, but only
    * allows nulled (transparent) blank tiles, or we would need a separate
    * gegl-storage for each tile.
@@ -268,6 +268,16 @@
   return object;
 }
 
+static void
+gegl_storage_finalize (GObject *object)
+{
+  GeglStorage *self = GEGL_STORAGE (object);
+
+  if (self->idle_swapper)
+    g_source_remove (self->idle_swapper);
+
+  (*G_OBJECT_CLASS (parent_class)->finalize)(object);
+}
 
 static void
 gegl_storage_class_init (GeglStorageClass *class)
@@ -276,6 +286,7 @@
 
   parent_class                = g_type_class_peek_parent (class);
   gobject_class->constructor  = gegl_storage_constructor;
+  gobject_class->finalize     = gegl_storage_finalize;
   gobject_class->set_property = set_property;
   gobject_class->get_property = get_property;
 



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