int ret = -1;
char *new_dom_name = NULL;
char *old_dom_name = NULL;
+ char *new_dom_cfg_file = NULL;
char *old_dom_cfg_file = NULL;
virCheckFlags(0, ret);
if (VIR_STRDUP(new_dom_name, new_name) < 0)
goto cleanup;
- if (!(old_dom_cfg_file = virDomainConfigFile(cfg->configDir,
- vm->def->name))) {
+ if (!(new_dom_cfg_file = virDomainConfigFile(cfg->configDir,
+ new_dom_name)) ||
+ !(old_dom_cfg_file = virDomainConfigFile(cfg->configDir,
+ vm->def->name)))
goto cleanup;
- }
event_old = virDomainEventLifecycleNewFromObj(vm,
VIR_DOMAIN_EVENT_UNDEFINED,
cleanup:
VIR_FREE(old_dom_cfg_file);
+ VIR_FREE(new_dom_cfg_file);
VIR_FREE(old_dom_name);
VIR_FREE(new_dom_name);
qemuDomainEventQueue(driver, event_old);
vm->def->name = old_dom_name;
old_dom_name = NULL;
}
+
+ if (virFileExists(new_dom_cfg_file))
+ unlink(new_dom_cfg_file);
+
goto cleanup;
}