static void virCapabilitiesFreeGuest(virCapsGuestPtr guest) { int i; if (guest == NULL) return; VIR_FREE(guest->ostype); VIR_FREE(guest->arch.name); VIR_FREE(guest->arch.defaultInfo.emulator); VIR_FREE(guest->arch.defaultInfo.loader); for (i = 0 ; i < guest->arch.defaultInfo.nmachines ; i++) virCapabilitiesFreeGuestMachine(guest->arch.defaultInfo.machines[i]); VIR_FREE(guest->arch.defaultInfo.machines); for (i = 0 ; i < guest->arch.ndomains ; i++) virCapabilitiesFreeGuestDomain(guest->arch.domains[i]); VIR_FREE(guest->arch.domains); for (i = 0 ; i < guest->nfeatures ; i++) virCapabilitiesFreeGuestFeature(guest->features[i]); VIR_FREE(guest->features); VIR_FREE(guest); }
/** * virCapabilitiesFreeMachines: * @machines: table of vircapsGuestMachinePtr * * Free a table of virCapsGuestMachinePtr */ void virCapabilitiesFreeMachines(virCapsGuestMachinePtr *machines, int nmachines) { int i; if (!machines) return; for (i = 0; i < nmachines && machines[i]; i++) { virCapabilitiesFreeGuestMachine(machines[i]); machines[i] = NULL; } VIR_FREE(machines); }
static void virCapabilitiesFreeGuestDomain(virCapsGuestDomainPtr dom) { size_t i; if (dom == NULL) return; VIR_FREE(dom->info.emulator); VIR_FREE(dom->info.loader); for (i = 0; i < dom->info.nmachines; i++) virCapabilitiesFreeGuestMachine(dom->info.machines[i]); VIR_FREE(dom->info.machines); VIR_FREE(dom); }