From 5c0c4793478fe231fe8a54147533ffe6d0f0a184 Mon Sep 17 00:00:00 2001 From: Jonas 'Sortie' Termansen Date: Wed, 1 Oct 2014 20:12:08 +0200 Subject: [PATCH] Fix mbr error messages on empty partitions. --- mbr/mbrfs.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/mbr/mbrfs.cpp b/mbr/mbrfs.cpp index a7f2b2f7..0bae2786 100644 --- a/mbr/mbrfs.cpp +++ b/mbr/mbrfs.cpp @@ -237,9 +237,10 @@ int main(int argc, char* argv[]) if ( fd < 0 ) error(1, errno, "`%s'", path); struct mbr mbr; - if ( preadall(fd, &mbr, sizeof(mbr), 0) != sizeof(mbr) ) + size_t amount = preadall(fd, &mbr, sizeof(mbr), 0); + if ( amount < sizeof(mbr) && errno != EEOF ) error(1, errno, "read: `%s'", path); - if ( !verify_is_mbr(&mbr) ) + if ( amount < sizeof(mbr) || !verify_is_mbr(&mbr) ) { if ( probe ) exit(1);