A USB filter is stored in a hostdev. The original code doesn't allocate hostdev->info that is expected to be allocated with hostdev. So use virDomainHostdevDefAlloc() to allocate both as we expect.
Signed-off-by: Ryota Ozaki <ozaki.ry...@gmail.com> --- src/vbox/vbox_tmpl.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/vbox/vbox_tmpl.c b/src/vbox/vbox_tmpl.c index 3807a6d..f4cd5cf 100644 --- a/src/vbox/vbox_tmpl.c +++ b/src/vbox/vbox_tmpl.c @@ -3333,7 +3333,8 @@ sharedFoldersCleanup: deviceFilter->vtbl->GetActive(deviceFilter, &active); if (active) { - if (VIR_ALLOC(def->hostdevs[USBFilterCount]) >= 0) { + def->hostdevs[USBFilterCount] = virDomainHostdevDefAlloc(); + if (def->hostdevs[USBFilterCount]) { PRUnichar *vendorIdUtf16 = NULL; char *vendorIdUtf8 = NULL; unsigned vendorId = 0; -- 1.8.4 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list