From 54fe01b532d9e7e54e6d8be6200eda1a0d1a4889 Mon Sep 17 00:00:00 2001 From: Thomas Harte Date: Tue, 24 Dec 2019 23:01:52 -0500 Subject: [PATCH] Fixed: the final track is inclusive, not exclusive. --- Storage/Disk/DiskImage/Formats/MSA.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Storage/Disk/DiskImage/Formats/MSA.cpp b/Storage/Disk/DiskImage/Formats/MSA.cpp index 10db4461d..2da697605 100644 --- a/Storage/Disk/DiskImage/Formats/MSA.cpp +++ b/Storage/Disk/DiskImage/Formats/MSA.cpp @@ -80,7 +80,7 @@ std::shared_ptr<::Storage::Disk::Track> MSA::get_track_at_position(::Storage::Di const auto position = address.position.as_int(); if(position < starting_track_) return nullptr; - if(position >= ending_track_) return nullptr; + if(position > ending_track_) return nullptr; const auto &track = uncompressed_tracks_[size_t(position - starting_track_) * size_t(sides_) + size_t(address.head)]; assert(!track.empty()); @@ -88,7 +88,7 @@ std::shared_ptr<::Storage::Disk::Track> MSA::get_track_at_position(::Storage::Di } HeadPosition MSA::get_maximum_head_position() { - return HeadPosition(ending_track_); + return HeadPosition(ending_track_ + 1); } int MSA::get_head_count() {