# functions. There's a corresponding exclude to allow usage within tests,
# docs, examples, tools, src/libvirt-*.c, and include/libvirt/libvirt-*.h
sc_prohibit_virXXXFree:
- @prohibit='\bvir(Domain|Network|NodeDevice|StorageVol)Free\b' \
+ @prohibit='\bvir(Domain|Network|NodeDevice|StorageVol|StoragePool)Free\b' \
exclude='sc_prohibit_virXXXFree' \
halt='avoid using 'virXXXFree', use 'virObjectUnref' instead' \
$(_sc_search_regexp)
virNetMessageSaveError(rerr);
if (pools && npools > 0) {
for (i = 0; i < npools; i++)
- virStoragePoolFree(pools[i]);
+ virObjectUnref(pools[i]);
VIR_FREE(pools);
}
return rv;
virObjectUnref(vols[i]);
VIR_FREE(vols);
}
- if (pool)
- virStoragePoolFree(pool);
+ virObjectUnref(pool);
return rv;
}
cleanup:
if (tmp_pools) {
- for (i = 0; i < npools; i++) {
- if (tmp_pools[i])
- virStoragePoolFree(tmp_pools[i]);
- }
+ for (i = 0; i < npools; i++)
+ virObjectUnref(tmp_pools[i]);
}
VIR_FREE(tmp_pools);
cleanup:
if (tmp_pools) {
for (i = 0; i < ret.pools.pools_len; i++)
- if (tmp_pools[i])
- virStoragePoolFree(tmp_pools[i]);
+ virObjectUnref(tmp_pools[i]);
VIR_FREE(tmp_pools);
}
char *poolxml = NULL;
virStorageVolInfo info;
int ret = -1;
- virErrorPtr savedError = NULL;
if (def->src->type != VIR_STORAGE_TYPE_VOLUME)
return 0;
ret = 0;
cleanup:
- if (ret < 0)
- savedError = virSaveLastError();
- if (pool)
- virStoragePoolFree(pool);
+ virObjectUnref(pool);
virObjectUnref(vol);
- if (savedError) {
- virSetError(savedError);
- virFreeError(savedError);
- }
-
VIR_FREE(poolxml);
virStoragePoolDefFree(pooldef);
return ret;