#1349 Crash going past end of composition

closed
Ted Felix
sequencer (64)
7
2012-09-16
2012-07-19
Ted Felix
No

Set the composition to be only 10 bars long to get this to happen more quickly. (Composition > Change Composition Start and End...) Record some MIDI on track 1. Record until 15 bars have gone by. Stop. Delete the segment. Try recording a second time. On the first (or so) incoming MIDI note, rg will crash.

Discussion

  • Ted Felix
    Ted Felix
    2012-07-22

    InternalSegmentMapper is trying to access the segment that was deleted.

     
  • Ted Felix
    Ted Felix
    2012-08-19

    A simpler way to reproduce this is to play the empty sequence back after deleting the segment. Once the sequencer reaches the time of the first event in the deleted segment, rg will crash.

     
  • Ted Felix
    Ted Felix
    2012-09-12

    Fixed in r13005. Turns out that MappedBufMetaIterator::addSegment() was allowing duplicate incoming segments to create multiple iterators.

    While this appears to fix the crash, it doesn't begin to fix the myriad other problems that happen when crossing the composition end while recording from MIDI. This area still needs more work at some point.