Rosegarden thorn Segmentation fault in AlsaDriver.cpp:1308

View: New views
10 Messages — Rating Filter:   Alert me  

Rosegarden thorn Segmentation fault in AlsaDriver.cpp:1308

by Bugzilla from dplater@webafrica.org.za :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi, I filed bug 2885468 a while back and it was requested that I contact
the list as well.
When loading the attached file "bug-549855_m100.rg" I get a segfault. A
copy of the gdb output and backtrace is attached. It still occurs in svn
11150. I've tried to debug it and if I step through
AlsaDriver::connectSomething I don't get it I have to run full speed to
1308        setPlausibleConnection(toConnect->getId(), ""); for it to
occur. Sorry my c and c++ skills are still in the making and I can't
offer anymore help.
Regards
Dave P


Program received signal SIGSEGV, Segmentation fault.
0x000000000051022f in Rosegarden::AlsaDriver::connectSomething (this=0x1628fe0) at src/sound/AlsaDriver.cpp:1308
1308        setPlausibleConnection(toConnect->getId(), "");
(gdb) bt
#0  0x000000000051022f in Rosegarden::AlsaDriver::connectSomething (this=0x1628fe0) at src/sound/AlsaDriver.cpp:1308
#1  0x0000000000504c7f in Rosegarden::RosegardenSequencer::connectSomething (this=0x142d0b0) at src/sequencer/RosegardenSequencer.cpp:594
#2  0x000000000067ed5a in Rosegarden::RosegardenMainWindow::setDocument (this=0x1575ad0, newDocument=0x1f16f20) at src/gui/application/RosegardenMainWindow.cpp:1202
#3  0x0000000000681d54 in Rosegarden::RosegardenMainWindow::openFile (this=0x1575ad0, filePath=DWARF-2 expression error: DW_OP_reg operations must be used either alone or in conjuction with DW_OP_piece.
) at src/gui/application/RosegardenMainWindow.cpp:1255
#4  0x000000000068d0d3 in Rosegarden::RosegardenMainWindow::openFile(QString) ()
#5  0x0000000000666e7f in Rosegarden::RosegardenMainWindow::openURL (this=0x1575ad0, url=<value optimized out>) at src/gui/application/RosegardenMainWindow.cpp:1739
#6  0x0000000000668a7e in Rosegarden::RosegardenMainWindow::openURL (this=0x1575ad0, url=DWARF-2 expression error: DW_OP_reg operations must be used either alone or in conjuction with DW_OP_piece.
) at src/gui/application/RosegardenMainWindow.cpp:1698
#7  0x0000000000657bfa in Rosegarden::RosegardenMainWindow::slotFileOpenRecent (this=0x1575ad0) at src/gui/application/RosegardenMainWindow.cpp:1861
#8  0x000000000068a8cd in Rosegarden::RosegardenMainWindow::qt_metacall (this=0x1575ad0, _c=InvokeMetaMethod, _id=-159487904, _a=0x7fffffffa8d0)
    at src/gui/application/RosegardenMainWindow.moc:510
#9  0x00007ffff650afbc in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib64/libQtCore.so.4
#10 0x00007ffff6ee3457 in QAction::triggered(bool) () from /usr/lib64/libQtGui.so.4
#11 0x00007ffff6ee489f in QAction::activate(QAction::ActionEvent) () from /usr/lib64/libQtGui.so.4
#12 0x00007ffff72b461d in ?? () from /usr/lib64/libQtGui.so.4
#13 0x00007ffff72ba52a in ?? () from /usr/lib64/libQtGui.so.4
#14 0x00007ffff6f37cf0 in QWidget::event(QEvent*) () from /usr/lib64/libQtGui.so.4
#15 0x00007ffff72bcceb in QMenu::event(QEvent*) () from /usr/lib64/libQtGui.so.4
#16 0x00007ffff6ee92ac in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib64/libQtGui.so.4
#17 0x00007ffff6ef03c1 in QApplication::notify(QObject*, QEvent*) () from /usr/lib64/libQtGui.so.4
#18 0x00007ffff64f5ddc in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib64/libQtCore.so.4
#19 0x00007ffff6eefc90 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&) () from /usr/lib64/libQtGui.so.4
#20 0x00007ffff6f5611e in ?? () from /usr/lib64/libQtGui.so.4
#21 0x00007ffff6f54d9a in QApplication::x11ProcessEvent(_XEvent*) () from /usr/lib64/libQtGui.so.4
#22 0x00007ffff6f7cb6c in ?? () from /usr/lib64/libQtGui.so.4
#23 0x00007ffff2df6dde in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
#24 0x00007ffff2dfa7a8 in ?? () from /usr/lib64/libglib-2.0.so.0
#25 0x00007ffff2dfa8d0 in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#26 0x00007ffff651e3a3 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#27 0x00007ffff6f7c31e in ?? () from /usr/lib64/libQtGui.so.4
#28 0x00007ffff64f4712 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#29 0x00007ffff64f4ae4 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#30 0x00007ffff64f6c99 in QCoreApplication::exec() () from /usr/lib64/libQtCore.so.4
#31 0x0000000000698924 in main (argc=1, argv=<value optimized out>) at src/gui/application/main.cpp:753

------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
Rosegarden-devel mailing list
Rosegarden-devel@... - use the link below to unsubscribe
https://lists.sourceforge.net/lists/listinfo/rosegarden-devel

bug-549855_m100.rg (9K) Download Attachment

Re: Rosegarden thorn Segmentation fault in AlsaDriver.cpp:1308

by D. Michael McIntyre :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Saturday 31 October 2009, Dave Plater wrote:

> When loading the attached file "bug-549855_m100.rg" I get a segfault.

I can confirm the crash.

Thanks for the file.  I'll investigate and see if I can do anything with it.  
If not, it'll have to wait for Chris to get back.  This is his territory.
--
D. Michael McIntyre

------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
Rosegarden-devel mailing list
Rosegarden-devel@... - use the link below to unsubscribe
https://lists.sourceforge.net/lists/listinfo/rosegarden-devel

Re: Rosegarden thorn Segmentation fault in AlsaDriver.cpp:1308

by D. Michael McIntyre :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Saturday 31 October 2009, Dave Plater wrote:

> When loading the attached file "bug-549855_m100.rg" I get a segfault.

How did you create this file?  The crash here is from the data being corrupt.  
The studio section has no devices at all.

We should try to handle encountering this situation more gracefully than just
crashing, but I'm a lot more concerned by the corruption itself than crashing
upon encountering a completely indecipherable puzzle.  From 0 to 0 which one
of these do we choose when there should never be fewer than 1?

Can you wind up in this situation reliably and get this crash to happen with a
variety of other files?
--
D. Michael McIntyre

------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
Rosegarden-devel mailing list
Rosegarden-devel@... - use the link below to unsubscribe
https://lists.sourceforge.net/lists/listinfo/rosegarden-devel

Re: Rosegarden thorn Segmentation fault in AlsaDriver.cpp:1308

by Bugzilla from dplater@webafrica.org.za :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On 10/31/2009 04:44 PM, D. Michael McIntyre wrote:

> On Saturday 31 October 2009, Dave Plater wrote:
>
>  
>> When loading the attached file "bug-549855_m100.rg" I get a segfault.
>>    
> How did you create this file?  The crash here is from the data being corrupt.  
> The studio section has no devices at all.
>
> We should try to handle encountering this situation more gracefully than just
> crashing, but I'm a lot more concerned by the corruption itself than crashing
> upon encountering a completely indecipherable puzzle.  From 0 to 0 which one
> of these do we choose when there should never be fewer than 1?
>
> Can you wind up in this situation reliably and get this crash to happen with a
> variety of other files?
>  
The file came from a bug report by an opensuse user that is trying out
the thorn version. I'll find out more and report back.
Thanks
Dave P


------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
Rosegarden-devel mailing list
Rosegarden-devel@... - use the link below to unsubscribe
https://lists.sourceforge.net/lists/listinfo/rosegarden-devel

Re: Rosegarden thorn Segmentation fault in AlsaDriver.cpp:1308

by Bugzilla from dplater@webafrica.org.za :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On 10/31/2009 05:19 PM, Dave Plater wrote:

> On 10/31/2009 04:44 PM, D. Michael McIntyre wrote:
>  
>> On Saturday 31 October 2009, Dave Plater wrote:
>>
>>  
>>    
>>> When loading the attached file "bug-549855_m100.rg" I get a segfault.
>>>    
>>>      
>> How did you create this file?  The crash here is from the data being corrupt.  
>> The studio section has no devices at all.
>>
>> We should try to handle encountering this situation more gracefully than just
>> crashing, but I'm a lot more concerned by the corruption itself than crashing
>> upon encountering a completely indecipherable puzzle.  From 0 to 0 which one
>> of these do we choose when there should never be fewer than 1?
>>
>> Can you wind up in this situation reliably and get this crash to happen with a
>> variety of other files?
>>  
>>    
> The file came from a bug report by an opensuse user that is trying out
> the thorn version. I'll find out more and report back.
> Thanks
> Dave P
>
>  
Going back to the novell bugzilla bug :
https://bugzilla.novell.com/show_bug.cgi?id=549855
The reporter said "it has been created with rosegarden4-1.7.3-0.pm.1from
packman opensuse 11.1 x86_64 repository"
I've asked him to check if the file hasn't been corrupted.
Regards
Dave P


------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
Rosegarden-devel mailing list
Rosegarden-devel@... - use the link below to unsubscribe
https://lists.sourceforge.net/lists/listinfo/rosegarden-devel

Re: Rosegarden thorn Segmentation fault in AlsaDriver.cpp:1308

by Julie S :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Dear RG Team,

considering the issue stated:
> puzzle.  From 0 to 0 which one
> > of these do we choose when there should never be fewer
> than 1?

A crash is bad, even if the file is corrupt.  Sounds like a robustness issue.

I guess we need to make certain we are not assuming the file is good...We should not trust it.  That would require a pessimistic approach to file reading.

We all know that the .rg are just compressed XML files, so anybody can and sometimes does hack these files.

We can either silently, overlook these corruptions and load what we can, or we can warn about them, or we can refuse to allow the load, but crashing is a bad option.

Those are my thoughts.

Sincerely,
Julie

--- On Sat, 10/31/09, Dave Plater <dplater@...> wrote:

> From: Dave Plater <dplater@...>
> Subject: Re: [Rosegarden-devel] Rosegarden thorn Segmentation fault in AlsaDriver.cpp:1308
> To: "D. Michael McIntyre" <michael.mcintyre@...>
> Cc: rosegarden-devel@...
> Date: Saturday, October 31, 2009, 11:19 AM
> On 10/31/2009 04:44 PM, D. Michael
> McIntyre wrote:
> > On Saturday 31 October 2009, Dave Plater wrote:
> >
> >   
> >> When loading the attached file
> "bug-549855_m100.rg" I get a segfault.
> >>     
> > How did you create this file?  The crash here is
> from the data being corrupt. 
> > The studio section has no devices at all.
> >
> > We should try to handle encountering this situation
> more gracefully than just
> > crashing, but I'm a lot more concerned by the
> corruption itself than crashing
> > upon encountering a completely indecipherable
> puzzle.  From 0 to 0 which one
> > of these do we choose when there should never be fewer
> than 1?
> >
> > Can you wind up in this situation reliably and get
> this crash to happen with a
> > variety of other files?
> >   
> The file came from a bug report by an opensuse user that is
> trying out
> the thorn version. I'll find out more and report back.
> Thanks
> Dave P
>
>
> ------------------------------------------------------------------------------
> Come build with us! The BlackBerry(R) Developer Conference
> in SF, CA
> is the only developer event you need to attend this year.
> Jumpstart your
> developing skills, take BlackBerry mobile applications to
> market and stay
> ahead of the curve. Join us from November 9 - 12, 2009.
> Register now!
> http://p.sf.net/sfu/devconference
> _______________________________________________
> Rosegarden-devel mailing list
> Rosegarden-devel@...
> - use the link below to unsubscribe
> https://lists.sourceforge.net/lists/listinfo/rosegarden-devel
>


     

------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
Rosegarden-devel mailing list
Rosegarden-devel@... - use the link below to unsubscribe
https://lists.sourceforge.net/lists/listinfo/rosegarden-devel

Re: Rosegarden thorn Segmentation fault in AlsaDriver.cpp:1308

by Bugzilla from dplater@webafrica.org.za :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On 10/31/2009 04:44 PM, D. Michael McIntyre wrote:

> On Saturday 31 October 2009, Dave Plater wrote:
>
>  
>> When loading the attached file "bug-549855_m100.rg" I get a segfault.
>>    
> How did you create this file?  The crash here is from the data being corrupt.  
> The studio section has no devices at all.
>
> We should try to handle encountering this situation more gracefully than just
> crashing, but I'm a lot more concerned by the corruption itself than crashing
> upon encountering a completely indecipherable puzzle.  From 0 to 0 which one
> of these do we choose when there should never be fewer than 1?
>
> Can you wind up in this situation reliably and get this crash to happen with a
> variety of other files?
>  
Here's the reply from the reporter :-

--- Comment #5 from michel munnix <m.munnix@...>  2009-10-31 12:59:27 MDT ---
I checked I can still open the file with rosegarden4-1.7.3-0.pm.1 and it seems
ok to me.
Having gunziped it to examine it, I confirm the studio is empty.
I've never really managed to setup the studio correctly.
Nor to make my sound work with jack
So I usually work in rosegarden, export to midi, use a software synth to
generate a wav file and encode it to mp3 to hear it on an mp3 device.
I have made some new experiments with jack and it seems to improve
so I tried with an other file which has a studio. It crashes at another point,
so I open a new bug.

I also loaded it into rosegarden-1.7.3 with no problem.
Regards
Dave P


------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
Rosegarden-devel mailing list
Rosegarden-devel@... - use the link below to unsubscribe
https://lists.sourceforge.net/lists/listinfo/rosegarden-devel

Re: Rosegarden thorn Segmentation fault in AlsaDriver.cpp:1308

by D. Michael McIntyre :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Saturday 31 October 2009, Julie S wrote:

> A crash is bad, even if the file is corrupt.  Sounds like a robustness
> issue.

No doubt.  I'm not arguing "oh, the crash is no big deal."  I'm just more
worried about what's saving crap .rg files in the first place.

It seems Rosegarden Classic is saving crap .rg files in the first place.  I
imagine this used to work because we had all that auto creation garbage that
would fill in something for the empty studio at runtime.

It does, in fact, open just fine with 1.7.2 (the only version of Classic close
to hand.)

> I guess we need to make certain we are not assuming the file is good...We
> should not trust it.  That would require a pessimistic approach to file
> reading.

We generally have one.  The XML parsing code is full of "Warning, element blah
found outside of blither section" and so on.  This one isn't actually a file
reading thing per se anyway, so much as a "we need to either avoid crashing
when something that shouldn't be null is null, or we should supply something
so it's never null" issue.
--
D. Michael McIntyre

------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
Rosegarden-devel mailing list
Rosegarden-devel@... - use the link below to unsubscribe
https://lists.sourceforge.net/lists/listinfo/rosegarden-devel

Re: Rosegarden thorn Segmentation fault in AlsaDriver.cpp:1308

by cannam :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Sat, Oct 31, 2009 at 2:44 PM, D. Michael McIntyre
<michael.mcintyre@...> wrote:
> On Saturday 31 October 2009, Dave Plater wrote:
>
>> When loading the attached file "bug-549855_m100.rg" I get a segfault.
>
> How did you create this file?  The crash here is from the data being corrupt.
> The studio section has no devices at all.

That should be legitimate (as you describe it -- I haven't examined
the file in question).  Open the device manager, delete all the
devices, save the document -- should work.

This crash sounds like a straightforward mistake on my part.


Chris

------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
Rosegarden-devel mailing list
Rosegarden-devel@... - use the link below to unsubscribe
https://lists.sourceforge.net/lists/listinfo/rosegarden-devel

Re: Rosegarden thorn Segmentation fault in AlsaDriver.cpp:1308

by Bugzilla from dplater@webafrica.org.za :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On 10/31/2009 09:35 PM, Dave Plater wrote:

> On 10/31/2009 04:44 PM, D. Michael McIntyre wrote:
>  
>> On Saturday 31 October 2009, Dave Plater wrote:
>>
>>  
>>    
>>> When loading the attached file "bug-549855_m100.rg" I get a segfault.
>>>    
>>>      
>> How did you create this file?  The crash here is from the data being corrupt.  
>> The studio section has no devices at all.
>>
>> We should try to handle encountering this situation more gracefully than just
>> crashing, but I'm a lot more concerned by the corruption itself than crashing
>> upon encountering a completely indecipherable puzzle.  From 0 to 0 which one
>> of these do we choose when there should never be fewer than 1?
>>
>> Can you wind up in this situation reliably and get this crash to happen with a
>> variety of other files?
>>  
>>    
> Here's the reply from the reporter :-
>
> --- Comment #5 from michel munnix <m.munnix@...>  2009-10-31 12:59:27 MDT ---
> I checked I can still open the file with rosegarden4-1.7.3-0.pm.1 and it seems
> ok to me.
> Having gunziped it to examine it, I confirm the studio is empty.
> I've never really managed to setup the studio correctly.
> Nor to make my sound work with jack
> So I usually work in rosegarden, export to midi, use a software synth to
> generate a wav file and encode it to mp3 to hear it on an mp3 device.
> I have made some new experiments with jack and it seems to improve
> so I tried with an other file which has a studio. It crashes at another point,
> so I open a new bug.
>
> I also loaded it into rosegarden-1.7.3 with no problem.
> Regards
> Dave P
>
>  
I forgot to attach the file with studio mentioned above, it causes a
sigsegv :-

Program received signal SIGSEGV, Segmentation fault.
Rosegarden::CompositionModelImpl::slotInstrumentParametersChanged
(this=0x1ad4360, id=2002)
    at src/gui/editors/segment/compositionview/CompositionModelImpl.cpp:488    
488             const Segment* s = *i;                                          
(gdb) subgraph starting at rosegarden timed out (subgraph_wait_fd=13, status =
0, state = Triggered, pollret = 0 revents = 0x0)

Regards
Dave P



------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
Rosegarden-devel mailing list
Rosegarden-devel@... - use the link below to unsubscribe
https://lists.sourceforge.net/lists/listinfo/rosegarden-devel

bug-551669_magnificat7.rg (20K) Download Attachment