mirror of
git://sourceware.org/git/lvm2.git
synced 2024-12-21 13:34:40 +03:00
libdm: clear region table in dm_stats_list()
Call _stats_regions_destroy() from dm_stats_list() if dms->regions is non-NULL. This avoids leaking any pool allocations and ensures the handle is in a known state: if an error occurs during the list, dms->regions will be NULL and the handle will appear empty.
This commit is contained in:
parent
8d6ac1c3ba
commit
009b711834
@ -1083,6 +1083,9 @@ int dm_stats_list(struct dm_stats *dms, const char *program_id)
|
|||||||
if (!_stats_set_name_cache(dms))
|
if (!_stats_set_name_cache(dms))
|
||||||
return_0;
|
return_0;
|
||||||
|
|
||||||
|
if (dms->regions)
|
||||||
|
_stats_regions_destroy(dms);
|
||||||
|
|
||||||
r = dm_snprintf(msg, sizeof(msg), "@stats_list %s", program_id);
|
r = dm_snprintf(msg, sizeof(msg), "@stats_list %s", program_id);
|
||||||
|
|
||||||
if (r < 0) {
|
if (r < 0) {
|
||||||
|
Loading…
Reference in New Issue
Block a user