gimp r27607 - in trunk: . app/core
- From: mitch svn gnome org
- To: svn-commits-list gnome org
- Subject: gimp r27607 - in trunk: . app/core
- Date: Mon, 10 Nov 2008 22:15:40 +0000 (UTC)
Author: mitch
Date: Mon Nov 10 22:15:40 2008
New Revision: 27607
URL: http://svn.gnome.org/viewvc/gimp?rev=27607&view=rev
Log:
2008-11-10 Michael Natterer <mitch gimp org>
* app/core/gimpprojection.[ch]
* app/core/gimpprojection-construct.c: add code that keeps the
gegl processor around across calls, but destroy it anyway until
gegl_processor_set_rectangle() is fixed.
Modified:
trunk/ChangeLog
trunk/app/core/gimpprojection-construct.c
trunk/app/core/gimpprojection.c
trunk/app/core/gimpprojection.h
Modified: trunk/app/core/gimpprojection-construct.c
==============================================================================
--- trunk/app/core/gimpprojection-construct.c (original)
+++ trunk/app/core/gimpprojection-construct.c Mon Nov 10 22:15:40 2008
@@ -144,7 +144,6 @@
gint h)
{
GeglNode *sink;
- GeglProcessor *processor;
GeglRectangle rect;
sink = gimp_projection_get_sink_node (proj);
@@ -154,11 +153,18 @@
rect.width = w;
rect.height = h;
- processor = gegl_node_new_processor (sink, &rect);
-
- while (gegl_processor_work (processor, NULL));
-
- g_object_unref (processor);
+ if (! proj->processor)
+ proj->processor = gegl_node_new_processor (sink, &rect);
+ else
+ gegl_processor_set_rectangle (proj->processor, &rect);
+
+ while (gegl_processor_work (proj->processor, NULL));
+
+#ifdef __GNUC__
+#warning FIXME: keep the processor around once gegl_processor_set_rectangle() works
+#endif
+ g_object_unref (proj->processor);
+ proj->processor = NULL;
}
static void
Modified: trunk/app/core/gimpprojection.c
==============================================================================
--- trunk/app/core/gimpprojection.c (original)
+++ trunk/app/core/gimpprojection.c Mon Nov 10 22:15:40 2008
@@ -203,6 +203,12 @@
proj->sink_node = NULL;
}
+ if (proj->processor)
+ {
+ g_object_unref (proj->processor);
+ proj->processor = NULL;
+ }
+
G_OBJECT_CLASS (parent_class)->finalize (object);
}
Modified: trunk/app/core/gimpprojection.h
==============================================================================
--- trunk/app/core/gimpprojection.h (original)
+++ trunk/app/core/gimpprojection.h Mon Nov 10 22:15:40 2008
@@ -58,6 +58,7 @@
TilePyramid *pyramid;
GeglNode *graph;
GeglNode *sink_node;
+ GeglProcessor *processor;
GSList *update_areas;
GimpProjectionIdleRender idle_render;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]