On Wed, Sep 23, 2015 at 02:54:51PM +0100, Zeeshan Ali (Khattak) wrote: > On Wed, Sep 23, 2015 at 2:18 PM, Daniel P. Berrange <berrange@xxxxxxxxxx> wrote: > > On Wed, Sep 23, 2015 at 01:44:28PM +0100, Zeeshan Ali (Khattak) wrote: > >> The returned GVirStoragePoolInfo pointer is not a GObject so it must not > >> be unrefed using g_object_unref(). Since gvir_storage_pool_info_free() > >> is private function, callers must either use g_slice_free() or > >> g_boxed_free(). > >> --- > >> > >> Perhaps we should just make gvir_storage_pool_info_free() public instead? > >> > >> libvirt-gobject/libvirt-gobject-storage-pool.c | 4 ++-- > >> 1 file changed, 2 insertions(+), 2 deletions(-) > >> > >> diff --git a/libvirt-gobject/libvirt-gobject-storage-pool.c b/libvirt-gobject/libvirt-gobject-storage-pool.c > >> index 7f26b1b..f015efa 100644 > >> --- a/libvirt-gobject/libvirt-gobject-storage-pool.c > >> +++ b/libvirt-gobject/libvirt-gobject-storage-pool.c > >> @@ -277,8 +277,8 @@ GVirConfigStoragePool *gvir_storage_pool_get_config(GVirStoragePool *pool, > >> * @pool: the storage_pool > >> * @err: Place-holder for possible errors > >> * > >> - * Returns: (transfer full): the info. The returned object should be > >> - * unreffed with g_object_unref() when no longer needed. > >> + * Returns: (transfer full): the info. The returned pointer should be > >> + * freed using either #g_slice_free() or #g_boxed_free() when no longer needed. > >> */ > >> GVirStoragePoolInfo *gvir_storage_pool_get_info(GVirStoragePool *pool, > >> GError **err) > > > > ACK > > Thanks but just to be sure, I hope you didn't miss the details and > this comment below it: > > > Perhaps we should just make gvir_storage_pool_info_free() public instead? Since we've defined it as a boxed type, I think recommending g_boxed_free is the right solution. We should make sure our docs actually tell people this is a boxed type if they don't already :-) We should *not* in fact recommend g_slice_free(), as the use of the slice allocator is an internal implementation detail. We should be free to change to use a different allocator without breaking clients. Regards, Daniel -- |: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :| |: http://libvirt.org -o- http://virt-manager.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :| -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list