[gnome-builder] bufmgr: use transfer-full for returning buffers
- From: Christian Hergert <chergert src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-builder] bufmgr: use transfer-full for returning buffers
- Date: Mon, 9 Apr 2018 22:02:13 +0000 (UTC)
commit 91cbc59621c4897629b61794926ec58fe7103fca
Author: Christian Hergert <chergert redhat com>
Date: Mon Apr 9 15:01:03 2018 -0700
bufmgr: use transfer-full for returning buffers
This allows us to avoid relying on free_func directly and allow the callers
to control that.
src/libide/buffers/ide-buffer-manager.c | 4 ++--
src/libide/ide-context.c | 9 ++++++---
2 files changed, 8 insertions(+), 5 deletions(-)
---
diff --git a/src/libide/buffers/ide-buffer-manager.c b/src/libide/buffers/ide-buffer-manager.c
index 31c3d1d1e..274a178c4 100644
--- a/src/libide/buffers/ide-buffer-manager.c
+++ b/src/libide/buffers/ide-buffer-manager.c
@@ -1822,7 +1822,7 @@ unregister_auto_save (IdeBufferManager *self,
*
* Buffers are generally not added to the buffer list until they have been loaded.
*
- * Returns: (transfer container) (element-type Ide.Buffer): a #GPtrArray of buffers.
+ * Returns: (transfer full) (element-type Ide.Buffer): a #GPtrArray of buffers.
*/
GPtrArray *
ide_buffer_manager_get_buffers (IdeBufferManager *self)
@@ -1842,7 +1842,7 @@ ide_buffer_manager_get_buffers (IdeBufferManager *self)
g_ptr_array_add (ret, g_object_ref (buffer));
}
- return g_steal_pointer (&ret);
+ return IDE_PTR_ARRAY_STEAL_FULL (&ret);
}
/**
diff --git a/src/libide/ide-context.c b/src/libide/ide-context.c
index 861cad201..cf2d69ae8 100644
--- a/src/libide/ide-context.c
+++ b/src/libide/ide-context.c
@@ -56,13 +56,14 @@
#include "snippets/ide-source-snippets-manager.h"
#include "testing/ide-test-manager.h"
#include "transfers/ide-transfer-manager.h"
-#include "util/ide-async-helper.h"
-#include "util/ide-line-reader.h"
-#include "util/ide-settings.h"
#include "vcs/ide-vcs.h"
#include "vcs/ide-vcs-monitor.h"
#include "workbench/ide-workbench.h"
#include "threading/ide-task.h"
+#include "util/ide-async-helper.h"
+#include "util/ide-glib.h"
+#include "util/ide-line-reader.h"
+#include "util/ide-settings.h"
/**
* SECTION:ide-context
@@ -1872,6 +1873,8 @@ ide_context_unload_buffer_manager (gpointer source_object,
buffers = ide_buffer_manager_get_buffers (self->buffer_manager);
+ IDE_PTR_ARRAY_SET_FREE_FUNC (buffers, g_object_unref);
+
task = ide_task_new (self, cancellable, callback, user_data);
if (buffers->len == 0)
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]