On Mon, Sep 21, 2015 at 06:49:34PM -0400, D. Michael McIntyre wrote: > Rosegarden finally crashed. Thanks to the years of diligent > stabilization work by Ted Felix (am I overlooking anyone else who worked > on improving stability?) crashes have become so rare that this caught me > totally by surprise. > > I used the eraser tool to delete a segment while the transport was > rolling, and boom. I tried to repeat the crash, and failed to do so. I > wasn't anticipating a crash, so I wasn't paying careful attention to my > steps. I could be overlooking something I did, and it might be possible > to repeat the crash, but if so, I can't figure out how. > > Let me also add that along the way I've noticed various things that > seemed wrong to me, and I've gone off to investigate. In a couple of > different cases, I backed out one of Tito's changes. Every time I did > that, I found the other behavior to be worse, so I put the fix back in. > Tito's work is holding up well in the face of more careful scrutiny. > > I'm still suspicious of the new duration-related code. I don't think > that solution is fully baked yet, but it's clearly better than the > alternative, so I decided to try to finish cooking it instead of > reverting it. I need to file some bug reports, but I'm in a really > creative mood at the moment, so I'm deferring that for another time. > > I'd also like to add that now that I've gotten used to the new > autoscroll feel, it seems consistent and manageable. I don't think it > will be necessary to adjust anything. I know the original code was full > to brimming with legacy cruft, and I appreciate the lengths Ted went to > in order to put together this new implementation. It's quite different, > yes, but it seems to be solid, thoughtfully-designed, and consistent. > > > #0 0x000000000047f7a0 in std::_Rb_tree<unsigned int, std::pair<unsigned > int const, Rosegarden::Track*>, std::_Select1st<std::pair<unsigned int > const, Rosegarden::Track*> >, std::less<unsigned int>, > std::allocator<std::pair<unsigned int const, Rosegarden::Track*> > > >::_M_begin (this=0x8) at /usr/include/c++/4.8/bits/stl_tree.h:508 > #1 0x000000000047c4c8 in std::_Rb_tree<unsigned int, std::pair<unsigned > int const, Rosegarden::Track*>, std::_Select1st<std::pair<unsigned int > const, Rosegarden::Track*> >, std::less<unsigned int>, > std::allocator<std::pair<unsigned int const, Rosegarden::Track*> > > >::find (this=0x8, __k=@0x7f573b6ac994: 2) at > /usr/include/c++/4.8/bits/stl_tree.h:1805 > #2 0x00000000004799a1 in std::map<unsigned int, Rosegarden::Track*, > std::less<unsigned int>, std::allocator<std::pair<unsigned int const, > Rosegarden::Track*> > >::find (this=0x8, __x=@0x7f573b6ac994: 2) at > /usr/include/c++/4.8/bits/stl_map.h:837 > #3 0x00000000004739f1 in Rosegarden::Composition::getTrackById > (this=0x0, track=2) at src/base/Composition.cpp:1646 > #4 0x0000000000525783 in Rosegarden::RosegardenDocument::getInstrument > (this=0x1c8c150, segment=0x28e1390) at > src/document/RosegardenDocument.cpp:3042 > #5 0x0000000000882101 in Rosegarden::InternalSegmentMapper::makeReady > (this=0x2aa19c0, inserter=..., time=...) at > src/gui/seqmanager/InternalSegmentMapper.cpp:400 > #6 0x00000000005d60e0 in > Rosegarden::MappedEventBuffer::iterator::makeReady (this=0x2aa5c00, > inserter=..., time=...) at src/gui/seqmanager/MappedEventBuffer.h:384 > #7 0x00000000005d56d5 in > Rosegarden::MappedBufMetaIterator::fetchEventsNoncompeting > (this=0x7f573400b6b8, inserter=..., startTime=..., endTime=...) at > src/sound/MappedBufMetaIterator.cpp:303 > #8 0x00000000005d53d6 in Rosegarden::MappedBufMetaIterator::fetchEvents > (this=0x7f573400b6b8, inserter=..., startTime=..., endTime=...) at > src/sound/MappedBufMetaIterator.cpp:212 > #9 0x0000000000552801 in Rosegarden::RosegardenSequencer::getSlice > (this=0x7f573400b640, mappedEventList=..., start=..., end=..., > firstFetch=false) at src/sequencer/RosegardenSequencer.cpp:1175 > #10 0x0000000000552752 in Rosegarden::RosegardenSequencer::fetchEvents > (this=0x7f573400b640, mappedEventList=..., start=..., end=..., > firstFetch=false) at src/sequencer/RosegardenSequencer.cpp:1153 > #11 0x0000000000552ca3 in Rosegarden::RosegardenSequencer::keepPlaying > (this=0x7f573400b640) at src/sequencer/RosegardenSequencer.cpp:1254 > #12 0x000000000055bb8a in Rosegarden::SequencerThread::run > (this=0x1ee4fd0) at src/sequencer/SequencerThread.cpp:72 > #13 0x00007f5751d8732f in ?? () from > /usr/lib/x86_64-linux-gnu/libQtCore.so.4 > #14 0x00007f57515f6182 in start_thread (arg=0x7f573b6ad700) at > pthread_create.c:312 > #15 0x00007f574f36247d in clone () at > ../sysdeps/unix/sysv/linux/x86_64/clone.S:111 > > -- > D. Michael McIntyre > > ------------------------------------------------------------------------------ > _______________________________________________ > Rosegarden-devel mailing list > [email protected] - use the link below to unsubscribe > https://lists.sourceforge.net/lists/listinfo/rosegarden-devel
Fixed. ------------------------------------------------------------------------------ _______________________________________________ Rosegarden-devel mailing list [email protected] - use the link below to unsubscribe https://lists.sourceforge.net/lists/listinfo/rosegarden-devel
