[anjuta] language-support-cpp-java: Cancel pending async calls during cache destruction
- From: Naba Kumar <naba src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [anjuta] language-support-cpp-java: Cancel pending async calls during cache destruction
- Date: Sat, 20 Feb 2010 10:32:16 +0000 (UTC)
commit f2889605e380ceb6e77e97a3975b18b8406db058
Author: Naba Kumar <naba gnome org>
Date: Sat Feb 20 12:29:43 2010 +0200
language-support-cpp-java: Cancel pending async calls during cache destruction
This ensures async calls cancelation during assit finalization, and also to cancel
them when autocomplete shows scope children.
.../language-support-cpp-java/cpp-java-assist.c | 42 ++++++++++----------
1 files changed, 21 insertions(+), 21 deletions(-)
---
diff --git a/plugins/language-support-cpp-java/cpp-java-assist.c b/plugins/language-support-cpp-java/cpp-java-assist.c
index 4339e3b..1ab7ec4 100644
--- a/plugins/language-support-cpp-java/cpp-java-assist.c
+++ b/plugins/language-support-cpp-java/cpp-java-assist.c
@@ -311,6 +311,27 @@ cpp_java_assist_get_pre_word (IAnjutaEditor* editor, IAnjutaIterable *iter)
static void
cpp_java_assist_destroy_completion_cache (CppJavaAssist *assist)
{
+ if (assist->priv->async_file)
+ {
+ g_cancellable_cancel (assist->priv->cancel_file);
+ assist->priv->async_file = FALSE;
+ }
+ g_cancellable_reset (assist->priv->cancel_file);
+
+ if (assist->priv->async_system)
+ {
+ g_cancellable_cancel (assist->priv->cancel_system);
+ assist->priv->async_system = FALSE;
+ }
+ g_cancellable_reset (assist->priv->cancel_system);
+
+ if (assist->priv->async_project)
+ {
+ g_cancellable_cancel (assist->priv->cancel_project);
+ assist->priv->async_project = FALSE;
+ }
+ g_cancellable_reset (assist->priv->cancel_project);
+
if (assist->priv->search_cache)
{
g_free (assist->priv->search_cache);
@@ -420,27 +441,6 @@ cpp_java_assist_create_word_completion_cache (CppJavaAssist *assist)
MAX_COMPLETIONS);
cpp_java_assist_destroy_completion_cache (assist);
- if (assist->priv->async_file)
- {
- g_cancellable_cancel (assist->priv->cancel_file);
- assist->priv->async_file = FALSE;
- }
- g_cancellable_reset (assist->priv->cancel_file);
-
- if (assist->priv->async_system)
- {
- g_cancellable_cancel (assist->priv->cancel_system);
- assist->priv->async_system = FALSE;
- }
- g_cancellable_reset (assist->priv->cancel_system);
-
- if (assist->priv->async_project)
- {
- g_cancellable_cancel (assist->priv->cancel_project);
- assist->priv->async_project = FALSE;
- }
- g_cancellable_reset (assist->priv->cancel_project);
-
if (!assist->priv->pre_word || strlen(assist->priv->pre_word) < 3)
return;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]