From 5bbf876f0c71f0f679acad9fa8d03395d135390f Mon Sep 17 00:00:00 2001 From: krcroft Date: Fri, 28 Feb 2020 18:22:43 -0800 Subject: [PATCH] Expand trackFile's shared_ptr life --- src/dos/cdrom_image.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/dos/cdrom_image.cpp b/src/dos/cdrom_image.cpp index b9791653..51cdc00c 100644 --- a/src/dos/cdrom_image.cpp +++ b/src/dos/cdrom_image.cpp @@ -413,8 +413,9 @@ bool CDROM_Interface_Image::GetAudioSub(unsigned char& attr, if (!tracks.empty()) { // We have a useable CD; get a valid play-position track_iter track = tracks.begin(); // the CD's current track is valid - if (player.trackFile.lock()) { - const uint32_t sample_rate = player.trackFile.lock()->getRate(); + const auto track_file = player.trackFile.lock(); // lock() creates a shared_ptr! + if (track_file) { + const uint32_t sample_rate = track_file->getRate(); const uint32_t played_frames = (player.playedTrackFrames * REDBOOK_FRAMES_PER_SECOND + sample_rate - 1) / sample_rate;