diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c index bcb0cf0bfb53b9b9d7b706fb8e032781b4fc0d20..f289a831bb531c78bd26d0d65613caa17e00326e 100644 --- a/src/qemu/qemu_driver.c +++ b/src/qemu/qemu_driver.c @@ -3906,6 +3906,10 @@ static void processWatchdogEvent(virQEMUDriverPtr driver, virDomainObjPtr vm, in { int ret; virQEMUDriverConfigPtr cfg = virQEMUDriverGetConfig(driver); + char *domname = virDomainObjGetShortName(vm); + + if (!domname) + goto cleanup; switch (action) { case VIR_DOMAIN_WATCHDOG_ACTION_DUMP: @@ -3915,7 +3919,7 @@ static void processWatchdogEvent(virQEMUDriverPtr driver, virDomainObjPtr vm, in if (virAsprintf(&dumpfile, "%s/%s-%u", cfg->autoDumpPath, - vm->def->name, + domname, (unsigned int)time(NULL)) < 0) goto cleanup; @@ -3959,6 +3963,7 @@ static void processWatchdogEvent(virQEMUDriverPtr driver, virDomainObjPtr vm, in qemuDomainObjEndAsyncJob(driver, vm); cleanup: + VIR_FREE(domname); virObjectUnref(cfg); }