summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZdenek Kabelac <zkabelac@redhat.com>2014-11-20 16:35:46 +0100
committerZdenek Kabelac <zkabelac@redhat.com>2014-11-20 16:35:46 +0100
commit9f2961f259ff990d3a21e8edac5f7caa564b0e2e (patch)
tree85f92499a7ab05e808f6d999ff68752a8db71f61
parente55c6999ae62506dd8798451bb95d7a3aa7da765 (diff)
downloadlvm2-9f2961f259ff990d3a21e8edac5f7caa564b0e2e.tar.gz
cache: check for internal error
Don't try to duplicate NULL on internal error path.
-rw-r--r--lib/metadata/lv.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/lib/metadata/lv.c b/lib/metadata/lv.c
index bf2d04e79..fb1cd7823 100644
--- a/lib/metadata/lv.c
+++ b/lib/metadata/lv.c
@@ -130,7 +130,12 @@ char *lvseg_discards_dup(struct dm_pool *mem, const struct lv_segment *seg)
char *lvseg_cachemode_dup(struct dm_pool *mem, const struct lv_segment *seg)
{
- return dm_pool_strdup(mem, get_cache_pool_cachemode_name(seg));
+ const char *name = get_cache_pool_cachemode_name(seg);
+
+ if (!name)
+ return_NULL;
+
+ return dm_pool_strdup(mem, name);
}
#ifdef DMEVENTD