octave-bug-tracker
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Octave-bug-tracker] [bug #46501] Crash running uimenu code under Qt


From: Lachlan Andrew
Subject: [Octave-bug-tracker] [bug #46501] Crash running uimenu code under Qt
Date: Wed, 29 Jun 2016 13:11:34 +0000 (UTC)
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:43.0) Gecko/20100101 Firefox/43.0

Update of bug #46501 (project octave):

                  Status:               Confirmed => Patch Submitted        
             Assigned to:                    None => lachlan                

    _______________________________________________________

Follow-up Comment #8:

There are two components to this bug:
1. Why is an error being thrown?
2. Why is it not being caught?

I think that the answer to the second question is that the error is being
thrown from the Qt thread, which doesn't have a try/catch around the code
being executed.  I propose that we put try/catch around any callbacks executed
by that thread, as per the attached patch.

This doesn't solve the fundamental problem, but it stops it from crashing.

I also got a stack trace from before the throw.  The main thing of interest is
that it goes through 


stack trace:
1: /home/lachlan/src/octave/.build/libinterp/.libs/liboctinterp.so.3 :
()+0x85c12f
2: /home/lachlan/src/octave/.build/libinterp/.libs/liboctinterp.so.3 :
()+0x85c2b6
3: /home/lachlan/src/octave/.build/libinterp/.libs/liboctinterp.so.3 :
()+0x85c317
4: /home/lachlan/src/octave/.build/libinterp/.libs/liboctinterp.so.3 :
()+0x85c3ac
5: /home/lachlan/src/octave/.build/libinterp/.libs/liboctinterp.so.3 :
base_graphics_object::get_properties()+0x2c
6: /home/lachlan/src/octave/.build/libgui/.libs/liboctgui.so.1 :
QtHandles::Panel::eventFilter(QObject*, QEvent*)+0xb7
7: /usr/lib/x86_64-linux-gnu/libQtCore.so.4 :
QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*,
QEvent*)+0x86
8: /usr/lib/x86_64-linux-gnu/libQtGui.so.4 :
QApplicationPrivate::notify_helper(QObject*, QEvent*)+0x6c
9: /usr/lib/x86_64-linux-gnu/libQtGui.so.4 : QApplication::notify(QObject*,
QEvent*)+0x270
10: /usr/lib/x86_64-linux-gnu/libQtCore.so.4 :
QCoreApplication::notifyInternal(QObject*, QEvent*)+0x6d
11: /usr/lib/x86_64-linux-gnu/libQtGui.so.4 :
QWidgetPrivate::sendPendingMoveAndResizeEvents(bool, bool)+0x1a1
12: /usr/lib/x86_64-linux-gnu/libQtGui.so.4 :
QWidgetPrivate::show_helper()+0x23
13: /usr/lib/x86_64-linux-gnu/libQtGui.so.4 : QWidget::setVisible(bool)+0x194
14: /usr/lib/x86_64-linux-gnu/libQtGui.so.4 :
QWidgetPrivate::showChildren(bool)+0x12e
15: /usr/lib/x86_64-linux-gnu/libQtGui.so.4 :
QWidgetPrivate::show_helper()+0x3f
16: /usr/lib/x86_64-linux-gnu/libQtGui.so.4 : QWidget::setVisible(bool)+0x194
17: /usr/lib/x86_64-linux-gnu/libQtCore.so.4 : QObject::event(QEvent*)+0x24e
18: /usr/lib/x86_64-linux-gnu/libQtGui.so.4 : QWidget::event(QEvent*)+0xb1b
19: /usr/lib/x86_64-linux-gnu/libQtGui.so.4 : QFrame::event(QEvent*)+0x1e
20: /usr/lib/x86_64-linux-gnu/libQtGui.so.4 :
QApplicationPrivate::notify_helper(QObject*, QEvent*)+0x8c
21: /usr/lib/x86_64-linux-gnu/libQtGui.so.4 : QApplication::notify(QObject*,
QEvent*)+0x270
22: /usr/lib/x86_64-linux-gnu/libQtCore.so.4 :
QCoreApplication::notifyInternal(QObject*, QEvent*)+0x6d
23: /usr/lib/x86_64-linux-gnu/libQtCore.so.4 :
QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*)+0x1ef
24: /usr/lib/x86_64-linux-gnu/libQtCore.so.4 : ()+0x1aabf3
25: /lib/x86_64-linux-gnu/libglib-2.0.so.0 : g_main_context_dispatch()+0x146
26: /lib/x86_64-linux-gnu/libglib-2.0.so.0 : ()+0x481f8
27: /lib/x86_64-linux-gnu/libglib-2.0.so.0 : g_main_context_iteration()+0x2c
28: /usr/lib/x86_64-linux-gnu/libQtCore.so.4 :
QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)+0x65
29: /usr/lib/x86_64-linux-gnu/libQtGui.so.4 : ()+0x266896
30: /usr/lib/x86_64-linux-gnu/libQtCore.so.4 :
QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)+0x2f
terminate called after throwing an instance of 'octave_execution_exception'
panic: Aborted -- stopping myself...
attempting to save variables to 'octave-workspace'...
save to 'octave-workspace' complete
Aborted


(file #37622)
    _______________________________________________________

Additional Item Attachment:

File name: bug_46501_uimenu_crash.cset    Size:1 KB


    _______________________________________________________

Reply to this item at:

  <http://savannah.gnu.org/bugs/?46501>

_______________________________________________
  Message sent via/by Savannah
  http://savannah.gnu.org/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]