
On Tue, May 22, 2012 at 11:12:20AM +0200, Christophe Fergeau wrote:
Some public methods in libvirt-gobject don't have g_return_if_fail checks on their arguments. It happens that GNOME Boxes tries to call gvir_connection_find_storage_pool_by_name with a NULL GVirConnection causing a crash https://bugzilla.gnome.org/show_bug.cgi?id=676216 While GNOME Boxes needs to be fixed not to pass an invalid value to this function, it's better if libvirt-object sanity checks the argument it is passed by the caller before using them. In this commit, I've went over all libvirt-gobject public functions to add g_return_if_fail checks where needed. --- libvirt-gobject/libvirt-gobject-connection.c | 122 +++++++++++++++++--- libvirt-gobject/libvirt-gobject-domain-device.c | 4 + libvirt-gobject/libvirt-gobject-domain-disk.c | 1 + libvirt-gobject/libvirt-gobject-domain-interface.c | 1 + libvirt-gobject/libvirt-gobject-domain-snapshot.c | 7 +- libvirt-gobject/libvirt-gobject-domain.c | 70 +++++++++-- libvirt-gobject/libvirt-gobject-interface.c | 13 ++- libvirt-gobject/libvirt-gobject-manager.c | 27 +++-- libvirt-gobject/libvirt-gobject-network-filter.c | 14 ++- libvirt-gobject/libvirt-gobject-network.c | 13 ++- libvirt-gobject/libvirt-gobject-node-device.c | 14 ++- libvirt-gobject/libvirt-gobject-secret.c | 6 +- libvirt-gobject/libvirt-gobject-storage-pool.c | 61 ++++++++-- libvirt-gobject/libvirt-gobject-storage-vol.c | 33 ++++-- libvirt-gobject/libvirt-gobject-stream.c | 6 + 15 files changed, 321 insertions(+), 71 deletions(-)
ACK 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 :|