[gnome-builder] pipeline: fix query signal emission
- From: Christian Hergert <chergert src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-builder] pipeline: fix query signal emission
- Date: Sun, 26 Feb 2017 01:12:01 +0000 (UTC)
commit 603491015215fd398c5abf57ecfb4fc8016057c8
Author: Christian Hergert <chergert redhat com>
Date: Sat Feb 25 17:11:07 2017 -0800
pipeline: fix query signal emission
These were not getting hit due to the missing class pointer mapping.
libide/buildsystem/ide-build-stage.c | 25 ++++++++++++++++++-------
1 files changed, 18 insertions(+), 7 deletions(-)
---
diff --git a/libide/buildsystem/ide-build-stage.c b/libide/buildsystem/ide-build-stage.c
index 7f19728..9b5c19a 100644
--- a/libide/buildsystem/ide-build-stage.c
+++ b/libide/buildsystem/ide-build-stage.c
@@ -398,11 +398,15 @@ ide_build_stage_class_init (IdeBuildStageClass *klass)
G_TYPE_BOOLEAN, 1, IDE_TYPE_BUILD_STAGE);
signals [QUERY] =
- g_signal_new_class_handler ("query",
- G_TYPE_FROM_CLASS (klass),
- G_SIGNAL_RUN_LAST,
- NULL, NULL, NULL, NULL,
- G_TYPE_NONE, 2, IDE_TYPE_BUILD_PIPELINE, G_TYPE_CANCELLABLE);
+ g_signal_new ("query",
+ G_TYPE_FROM_CLASS (klass),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (IdeBuildStageClass, query),
+ NULL, NULL, NULL,
+ G_TYPE_NONE,
+ 2,
+ IDE_TYPE_BUILD_PIPELINE,
+ G_TYPE_CANCELLABLE);
signals [REAP] =
g_signal_new ("reap",
@@ -872,10 +876,17 @@ ide_build_stage_get_stdout_path (IdeBuildStage *self)
gboolean
_ide_build_stage_has_query (IdeBuildStage *self)
{
+ IDE_ENTRY;
+
g_return_val_if_fail (IDE_IS_BUILD_STAGE (self), FALSE);
- return g_signal_has_handler_pending (self, signals [QUERY], 0, FALSE) ||
- IDE_BUILD_STAGE_GET_CLASS (self)->query != NULL;
+ if (g_signal_has_handler_pending (self, signals [QUERY], 0, FALSE))
+ IDE_RETURN (TRUE);
+
+ if (IDE_BUILD_STAGE_GET_CLASS (self)->query)
+ IDE_RETURN (TRUE);
+
+ IDE_RETURN (FALSE);
}
void
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]