summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPetr Rockai <me@mornfall.net>2014-02-28 16:21:09 +0100
committerPetr Rockai <me@mornfall.net>2014-02-28 16:21:09 +0100
commit3e5bec37e9cec455f20656858ba510b69010676d (patch)
tree3825294c3624345c27a1550a22a97e5bf27e23b8
parentc69d37d1260aac04b8964ca92af489a2de0e9d77 (diff)
downloadlvm2-3e5bec37e9cec455f20656858ba510b69010676d.tar.gz
format-text: Fix _raw_read_mda_header (missing close, open r/o).
-rw-r--r--lib/format_text/format-text.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/format_text/format-text.c b/lib/format_text/format-text.c
index 0d6483a91..e0b2786f2 100644
--- a/lib/format_text/format-text.c
+++ b/lib/format_text/format-text.c
@@ -318,12 +318,15 @@ static void _xlate_mdah(struct mda_header *mdah)
static int _raw_read_mda_header(struct mda_header *mdah, struct device_area *dev_area)
{
- if (!dev_open(dev_area->dev))
+ if (!dev_open_readonly(dev_area->dev))
return_0;
if (!dev_read(dev_area->dev, dev_area->start, MDA_HEADER_SIZE, mdah))
return_0;
+ if (!dev_close(dev_area->dev))
+ return_0;
+
if (mdah->checksum_xl != xlate32(calc_crc(INITIAL_CRC, (uint8_t *)mdah->magic,
MDA_HEADER_SIZE -
sizeof(mdah->checksum_xl)))) {