summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--shlibs/blkid/src/cache.c4
-rw-r--r--shlibs/blkid/src/verify.c7
2 files changed, 9 insertions, 2 deletions
diff --git a/shlibs/blkid/src/cache.c b/shlibs/blkid/src/cache.c
index 01e4be06..acdf96dd 100644
--- a/shlibs/blkid/src/cache.c
+++ b/shlibs/blkid/src/cache.c
@@ -181,8 +181,10 @@ void blkid_put_cache(blkid_cache cache)
}
blkid_free_tag(tag);
}
- free(cache->bic_filename);
+ blkid_free_probe(cache->probe);
+
+ free(cache->bic_filename);
free(cache);
}
diff --git a/shlibs/blkid/src/verify.c b/shlibs/blkid/src/verify.c
index 40ab4c67..78dafe7e 100644
--- a/shlibs/blkid/src/verify.c
+++ b/shlibs/blkid/src/verify.c
@@ -87,8 +87,13 @@ blkid_dev blkid_verify(blkid_cache cache, blkid_dev dev)
(unsigned long)st.st_mtime, (unsigned long)diff));
- if (!cache->probe)
+ if (!cache->probe) {
cache->probe = blkid_new_probe();
+ if (!cache->probe) {
+ blkid_free_dev(dev);
+ return NULL;
+ }
+ }
fd = open(dev->bid_name, O_RDONLY);
if (fd < 0) {