Commit 29f3b4d9 authored by Michael Natterer's avatar Michael Natterer 😴

buffer-source: invalidate the right rectangles when the buffer changes

When a buffer is set, we need to invalidate the whole extents of the
old and new buffers eplicitly in set_property(). Any earlier or later
invalidation will miss one of the rectangles.
parent c71b573f
......@@ -103,6 +103,10 @@ my_set_property (GObject *object,
g_assert (p->buffer_changed_handler > 0);
g_signal_handler_disconnect (o->buffer, p->buffer_changed_handler);
/* XXX: should decrement signal connected count */
buffer_changed (GEGL_BUFFER (o->buffer),
gegl_buffer_get_extent (GEGL_BUFFER (o->buffer)),
operation);
}
buffer = g_value_get_object (value);
......@@ -113,6 +117,9 @@ my_set_property (GObject *object,
gegl_buffer_signal_connect (buffer, "changed",
G_CALLBACK (buffer_changed),
operation);
buffer_changed (buffer, gegl_buffer_get_extent (buffer),
operation);
}
break;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment