Daniel P. Berrange wrote:
On Wed, Dec 17, 2008 at 09:26:51PM +0100, Chris Lalancette wrote:
> Cole Robinson wrote:
>
>> Ahh, I didn't realize the AssignDef caveat. Thanks for pointing that
>> out. Something like this should work then?
>>
>> diff --git a/src/storage_driver.c b/src/storage_driver.c
>> index 2432a9a..330317c 100644
>> --- a/src/storage_driver.c
>> +++ b/src/storage_driver.c
>> @@ -544,12 +544,13 @@ storagePoolDefine(virConnectPtr conn,
>>
>> if (!(pool = virStoragePoolObjAssignDef(conn, &driver->pools, def)))
>> goto cleanup;
>> - def = NULL;
>>
>> if (virStoragePoolObjSaveDef(conn, driver, pool, def) < 0) {
>> virStoragePoolObjRemove(&driver->pools, pool);
>> + def = NULL;
>> goto cleanup;
>> }
>> + def = NULL;
>>
>> ret = virGetStoragePool(conn, pool->def->name,
pool->def->uuid);
>>
>>
> Yeah, that looks better. Seems to be good to me, so ACK.
>
Functionally correct, so fine to commit, but I still think we should
change the virStoragePoolObjSaveDef method params, but not urgent unless
you want to change it now.
Daniel
I opted just to commit the above fix. We can address the API issue later.
Thanks,
Cole