summaryrefslogtreecommitdiffstatshomepage
path: root/src/lib/formats/poly_dsk.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/formats/poly_dsk.cpp')
-rw-r--r--src/lib/formats/poly_dsk.cpp8
1 files changed, 3 insertions, 5 deletions
diff --git a/src/lib/formats/poly_dsk.cpp b/src/lib/formats/poly_dsk.cpp
index 4a264e293a1..8b8f48780f8 100644
--- a/src/lib/formats/poly_dsk.cpp
+++ b/src/lib/formats/poly_dsk.cpp
@@ -50,9 +50,8 @@ int poly_cpm_format::identify(util::random_read &io, uint32_t form_factor, const
{
// check for Poly CP/M boot sector
uint8_t boot[16];
- size_t actual;
- io.read_at(0, boot, 16, actual);
- if (memcmp(boot, "\x86\xc3\xb7\x00\x00\x8e\x10\xc0\xbf\x00\x01\xbf\xe0\x60\x00\x00", 16) == 0)
+ auto const [err, actual] = read_at(io, 0, boot, 16);
+ if (!err && (16 == actual) && !memcmp(boot, "\x86\xc3\xb7\x00\x00\x8e\x10\xc0\xbf\x00\x01\xbf\xe0\x60\x00\x00", 16))
{
return FIFID_SIZE|FIFID_SIGN;
}
@@ -114,8 +113,7 @@ bool poly_cpm_format::load(util::random_read &io, uint32_t form_factor, const st
sects[i].deleted = false;
sects[i].bad_crc = false;
sects[i].data = &sect_data[sdatapos];
- size_t actual;
- io.read(sects[i].data, bps, actual);
+ /*auto const [err, actual] =*/ read(io, sects[i].data, bps); // FIXME: check for errors and premature EOF
sdatapos += bps;
}
// gap sizes unverified