diff --git a/libs/ardour/disk_reader.cc b/libs/ardour/disk_reader.cc index b7ac8dbfc9..700a058392 100644 --- a/libs/ardour/disk_reader.cc +++ b/libs/ardour/disk_reader.cc @@ -1662,11 +1662,16 @@ DiskReader::reload_loop () return; } + boost::shared_ptr c = channels.reader(); + + if (c->empty() || !_playlists[DataType::MIDI]) { + return; + } + Location* loc = _loop_location; boost::scoped_array mix_buf (new Sample [loop_fade_length]); boost::scoped_array gain_buf (new Sample [loop_fade_length]); - boost::shared_ptr c = channels.reader(); uint32_t channel = 0; for (ChannelList::iterator chan = c->begin(); chan != c->end(); ++chan, ++channel) {