[gnome-builder] gui: load search engine as part of project load
- From: Christian Hergert <chergert src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-builder] gui: load search engine as part of project load
- Date: Tue, 10 Sep 2019 23:19:29 +0000 (UTC)
commit 3b0b2d6f75e98bb86b4db06e501bd25b06363690
Author: Christian Hergert <chergert redhat com>
Date: Tue Sep 10 16:18:48 2019 -0700
gui: load search engine as part of project load
Technically there are still races, especially for very large projects as
we don't have a way to wait on the async creation of the search index.
A better fix would take that into account but is a bit more complex and
requires chaining tasks.
Fixes #1034
src/libide/gui/ide-workbench.c | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
---
diff --git a/src/libide/gui/ide-workbench.c b/src/libide/gui/ide-workbench.c
index 99d219ac0..59319a391 100644
--- a/src/libide/gui/ide-workbench.c
+++ b/src/libide/gui/ide-workbench.c
@@ -1006,6 +1006,11 @@ ide_workbench_load_project_completed (IdeWorkbench *self,
ide_workbench_set_vcs (self, IDE_VCS (vcs));
}
+ /* Create the search engine up-front */
+ if (self->search_engine == NULL)
+ self->search_engine = ide_object_ensure_child_typed (IDE_OBJECT (self->context),
+ IDE_TYPE_SEARCH_ENGINE);
+
if (lp->workspace_type != G_TYPE_INVALID)
{
IdeWorkspace *workspace;
@@ -1457,8 +1462,8 @@ ide_workbench_get_search_engine (IdeWorkbench *self)
g_return_val_if_fail (self->context != NULL, NULL);
if (self->search_engine == NULL)
- self->search_engine = ide_object_ensure_child_typed (IDE_OBJECT (self->context),
- IDE_TYPE_SEARCH_ENGINE);
+ self->search_engine = ide_object_ensure_child_typed (IDE_OBJECT (self->context),
+ IDE_TYPE_SEARCH_ENGINE);
return self->search_engine;
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]