summaryrefslogtreecommitdiff
path: root/usr/src
diff options
context:
space:
mode:
Diffstat (limited to 'usr/src')
-rw-r--r--usr/src/lib/libdiskmgt/common/slice.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/usr/src/lib/libdiskmgt/common/slice.c b/usr/src/lib/libdiskmgt/common/slice.c
index 5a37d6f4e6..11b7a86ff7 100644
--- a/usr/src/lib/libdiskmgt/common/slice.c
+++ b/usr/src/lib/libdiskmgt/common/slice.c
@@ -208,7 +208,8 @@ slice_get_stats(descriptor_t *dp, int stat_type, int *errp)
}
if ((*errp = add_inuse(dp->name, stats)) != 0) {
- return (NULL);
+ nvlist_free(stats);
+ return (NULL);
}
/* if no cluster use, check for a use of the local name */
@@ -248,6 +249,7 @@ slice_get_stats(descriptor_t *dp, int stat_type, int *errp)
sizeof (localpath));
if ((*errp = add_inuse(localpath, stats)) != 0) {
+ nvlist_free(stats);
return (NULL);
}