[gnome-builder] langserv-client: hold onto self reference during close operation
- From: Christian Hergert <chergert src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-builder] langserv-client: hold onto self reference during close operation
- Date: Sun, 30 Oct 2016 22:39:50 +0000 (UTC)
commit ea66ac145c45c37c4f7edf0ecfd61e72c17268a5
Author: Christian Hergert <chergert redhat com>
Date: Sun Oct 30 15:39:11 2016 -0700
langserv-client: hold onto self reference during close operation
We don't really need to do this, but it's nice to hold into a reference
to the langserv while we asynchronously close the rpc client.
libide/langserv/ide-langserv-client.c | 8 ++++++--
1 files changed, 6 insertions(+), 2 deletions(-)
---
diff --git a/libide/langserv/ide-langserv-client.c b/libide/langserv/ide-langserv-client.c
index f9e72f8..4ccd55c 100644
--- a/libide/langserv/ide-langserv-client.c
+++ b/libide/langserv/ide-langserv-client.c
@@ -623,7 +623,7 @@ ide_langserv_client_notification (IdeLangservClient *self,
g_assert (IDE_IS_LANGSERV_CLIENT (self));
g_assert (method != NULL);
g_assert (params != NULL);
- g_assert (rpc_client != NULL);
+ g_assert (JSONRPC_IS_CLIENT (rpc_client));
IDE_TRACE_MSG ("Notification: %s", method);
@@ -946,11 +946,15 @@ ide_langserv_client_shutdown_cb (GObject *object,
GAsyncResult *result,
gpointer user_data)
{
+ g_autoptr(IdeLangservClient) self = user_data;
JsonrpcClient *client = (JsonrpcClient *)object;
g_autoptr(GError) error = NULL;
IDE_ENTRY;
+ g_assert (JSONRPC_IS_CLIENT (client));
+ g_assert (IDE_IS_LANGSERV_CLIENT (self));
+
if (!jsonrpc_client_call_finish (client, result, NULL, &error))
g_warning ("%s", error->message);
@@ -975,7 +979,7 @@ ide_langserv_client_stop (IdeLangservClient *self)
NULL,
NULL,
ide_langserv_client_shutdown_cb,
- NULL);
+ g_object_ref (self));
g_clear_object (&priv->rpc_client);
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]