[gnome-builder] buffer: release symbol resolver aggressively



commit 4653d31283c71f6f5068ed2163983523a81abeb0
Author: Christian Hergert <christian hergert me>
Date:   Thu Sep 17 04:13:55 2015 -0700

    buffer: release symbol resolver aggressively

 libide/ide-buffer.c |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)
---
diff --git a/libide/ide-buffer.c b/libide/ide-buffer.c
index 555915c..ff08d95 100644
--- a/libide/ide-buffer.c
+++ b/libide/ide-buffer.c
@@ -882,7 +882,8 @@ ide_buffer_notify_language (IdeBuffer  *self,
   if ((language = gtk_source_buffer_get_language (GTK_SOURCE_BUFFER (self))))
     lang_id = gtk_source_language_get_id (language);
 
-  ide_extension_adapter_set_value (priv->symbol_resolver_adapter, lang_id);
+  if (priv->symbol_resolver_adapter)
+    ide_extension_adapter_set_value (priv->symbol_resolver_adapter, lang_id);
 
   ide_diagnostician_set_language (priv->diagnostician, language);
 }
@@ -2054,6 +2055,8 @@ ide_buffer_reclaim_timeout (gpointer data)
 
   priv->reclamation_handler = 0;
 
+  g_clear_object (&priv->symbol_resolver_adapter);
+
   buffer_manager = ide_context_get_buffer_manager (priv->context);
 
   _ide_buffer_manager_reclaim (buffer_manager, self);


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]