[gnome-builder] pipeline: disconnect ready tracking after setup
- From: Christian Hergert <chergert src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-builder] pipeline: disconnect ready tracking after setup
- Date: Fri, 19 Jan 2018 03:00:50 +0000 (UTC)
commit 538d0c15ef7ab1dfae3f1133d1f375338b7a63ad
Author: Christian Hergert <chergert redhat com>
Date: Thu Jan 18 18:52:42 2018 -0800
pipeline: disconnect ready tracking after setup
We can't really handle a single pipeline tracking load/unload/load, so
just disconnect our unload tracking after we have connected.
Instead, we rely on the build manager to reset the pipeline when the
configuration changes.
src/libide/buildsystem/ide-build-pipeline.c | 16 +++++++++++++---
1 file changed, 13 insertions(+), 3 deletions(-)
---
diff --git a/src/libide/buildsystem/ide-build-pipeline.c b/src/libide/buildsystem/ide-build-pipeline.c
index 9139aeba3..a44a4e375 100644
--- a/src/libide/buildsystem/ide-build-pipeline.c
+++ b/src/libide/buildsystem/ide-build-pipeline.c
@@ -984,10 +984,20 @@ ide_build_pipeline_notify_ready (IdeBuildPipeline *self,
g_assert (IDE_IS_BUILD_PIPELINE (self));
g_assert (IDE_IS_CONFIGURATION (configuration));
+ /*
+ * If we're being realistic, we can only really setup the build pipeline one
+ * time, once the configuration is ready. So cancel all tracking after that
+ * so that and just rely on the build manager to create a new pipeline when
+ * the active configuration changes.
+ */
+
if (ide_configuration_get_ready (configuration))
- ide_build_pipeline_load (self);
- else
- ide_build_pipeline_unload (self);
+ {
+ ide_build_pipeline_load (self);
+ g_signal_handlers_disconnect_by_func (configuration,
+ G_CALLBACK (ide_build_pipeline_notify_ready),
+ self);
+ }
IDE_EXIT;
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]