[Libvir] [PATCH 3/6] Inactive domain support: python bindings
Daniel Veillard
veillard at redhat.com
Wed Nov 15 09:57:23 UTC 2006
On Wed, Nov 15, 2006 at 02:20:33AM +0000, Daniel P. Berrange wrote:
> The attached patch implements the virListDefinedDomains method in the python
> bindings, since it wasn't being automatically generated by the generator.py
> script.
> + c_retval = virConnectNumOfDefinedDomains(conn);
> + if (c_retval < 0) {
> + Py_INCREF(Py_None);
> + return (Py_None);
> + }
> +
> + if (c_retval) {
> + names = malloc(sizeof(char *) * c_retval);
Miss NULL return check here I think.
> + c_retval = virConnectListDefinedDomains(conn, names, c_retval);
> + if (c_retval < 0) {
> + free(names);
> + Py_INCREF(Py_None);
> + return(Py_None);
> + }
> + }
> + py_retval = PyList_New(c_retval);
the paranoid in me would feel safer if the for loop was protected by
a test for names not being NULL even if I agree it's not strictly needed :-)
> + for (i = 0;i < c_retval;i++) {
> + PyList_SetItem(py_retval, i, libvirt_constcharPtrWrap(names[i]));
> + free(names[i]);
> + }
> +
> + if (names)
> + free(names);
> +
> + return(py_retval);
> + }
Please commit after adding the malloc return check :-)
Daniel
--
Red Hat Virtualization group http://redhat.com/virtualization/
Daniel Veillard | virtualization library http://libvirt.org/
veillard at redhat.com | libxml GNOME XML XSLT toolkit http://xmlsoft.org/
http://veillard.com/ | Rpmfind RPM search engine http://rpmfind.net/
More information about the libvir-list
mailing list