
22 Apr
2010
22 Apr
'10
7:38 p.m.
Gcc on F12 caught this, sorry I didn't catch it in the review:
- if ((machines = testQemuAllocMachines(&nmachines)) == NULL) + if ((caps->host.cpu = virCPUDefCopy(&host_cpu)) == NULL || + (machines = testQemuAllocMachines(&nmachines)) == NULL) goto cleanup;
This change meant that we could then use machines inside the cleanup: label without having initialized it; freeing uninitialized data is never a good idea, even it if is unlikely to have happened.
I'm pushing it under the obvious rule, since it breaks builds with --enable-compiler-warnings=error.
Hmm, my gcc didn't catch it :( I always configure with warnings=error and I even built from scratch everything just before pushing... Thanks for the fix. Jirka