[gnome-builder] vala-pack: hold lock while indexing file
- From: Christian Hergert <chergert src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-builder] vala-pack: hold lock while indexing file
- Date: Thu, 18 Jan 2018 15:21:19 +0000 (UTC)
commit da5f06c48e1cbcc1805bf4c81e1b35c5c58f3768
Author: Christian Hergert <chergert redhat com>
Date: Thu Jan 18 07:20:49 2018 -0800
vala-pack: hold lock while indexing file
src/plugins/vala-pack/ide-vala-code-indexer.vala | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)
---
diff --git a/src/plugins/vala-pack/ide-vala-code-indexer.vala
b/src/plugins/vala-pack/ide-vala-code-indexer.vala
index bbb863cb3..5627ee17f 100644
--- a/src/plugins/vala-pack/ide-vala-code-indexer.vala
+++ b/src/plugins/vala-pack/ide-vala-code-indexer.vala
@@ -38,7 +38,17 @@ namespace Ide
var index = service.index;
var tree = index.get_symbol_tree_sync (file, cancellable);
- var ret = new Ide.ValaCodeIndexEntries (file, tree as Ide.ValaSymbolTree);
+ Ide.CodeIndexEntries? ret = null;
+
+ Ide.ThreadPool.push (Ide.ThreadPoolKind.INDEXER, () => {
+ index.do_locked (_ => {
+ ret = new Ide.ValaCodeIndexEntries (file, tree as Ide.ValaSymbolTree);
+ });
+ GLib.Idle.add(index_file_async.callback);
+ });
+
+ yield;
+
if (ret == null)
throw new GLib.IOError.FAILED ("failed to build entries");
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]