On 11.05.2012 08:46, Guannan Ren wrote: > when failing to attach another usb device to a domain for some reason > which has one use device attached before, the libvirtd crashed. > The crash is caused by null-pointer dereference error in invoking > usbDeviceListSteal passed in NULL value usb variable. > commit 05abd1507d66aabb6cad12eeafeb4c4d1911c585 introduces the bug. > --- > src/qemu/qemu_hotplug.c | 3 ++- > 1 files changed, 2 insertions(+), 1 deletions(-) > > diff --git a/src/qemu/qemu_hotplug.c b/src/qemu/qemu_hotplug.c > index ad31eba..9b60816 100644 > --- a/src/qemu/qemu_hotplug.c > +++ b/src/qemu/qemu_hotplug.c > @@ -1213,7 +1213,8 @@ error: > > cleanup: > usbDeviceListFree(list); > - usbDeviceListSteal(driver->activeUsbHostdevs, usb); > + if (usb) > + usbDeviceListSteal(driver->activeUsbHostdevs, usb); > return -1; > } > ACK Michal -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list