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

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

[Octave-bug-tracker] [bug #48519] Segfault with Qt plotting when running


From: Andreas Weber
Subject: [Octave-bug-tracker] [bug #48519] Segfault with Qt plotting when running demos
Date: Fri, 15 Jul 2016 08:38:59 +0000 (UTC)
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Firefox/38.0 Iceweasel/38.8.0

URL:
  <http://savannah.gnu.org/bugs/?48519>

                 Summary: Segfault with Qt plotting when running demos
                 Project: GNU Octave
            Submitted by: andy1978
            Submitted on: Fri 15 Jul 2016 08:38:57 AM GMT
                Category: Plotting with OpenGL
                Severity: 3 - Normal
                Priority: 5 - Normal
              Item Group: Crash
                  Status: None
             Assigned to: None
         Originator Name: 
        Originator Email: 
             Open/Closed: Open
         Discussion Lock: Any
                 Release: dev
        Operating System: GNU/Linux

    _______________________________________________________

Details:

hg id c8abb2ba4017

This bug is not deterministic and happened with "demo axis", "demo pbaspect"
and "demo light"(see below). Perhaps it's some race condition which happens if
you make a lot plots in a sequence. In my case I've used 'compare_plot_demos
("toolkits", "qt")' from the scripts/testfun/private dir which basically makes
"demo xyz, print demo xyz2, print..."


start octave, getpid, attach gdb

[New Thread 0x7f333c43f700 (LWP 17310)]

Program received signal SIGSEGV, Segmentation fault.
0x00007f336548e2e8 in octave_handle::ok (this=0x10)
    at ../octave-src/libinterp/corefcn/oct-handle.h:109
109       bool ok (void) const { return ! octave::math::isnan (val); }
(gdb) bt
#0  0x00007f336548e2e8 in octave_handle::ok (this=0x10)
    at ../octave-src/libinterp/corefcn/oct-handle.h:109
#1  0x00007f336548f1dc in gh_manager::do_get_object (this=0x172d5b0, h=...)
    at libinterp/corefcn/graphics.h:14014
#2  0x00007f336548efbb in gh_manager::get_object (h=...) at
libinterp/corefcn/graphics.h:13776
#3  0x00007f33654c06dd in QtHandles::Object::object (this=0x0)
    at ../octave-src/libgui/graphics/Object.cc:82
#4  0x00007f33654c0768 in QtHandles::Object::slotUpdate (this=0x0, pId=2046)
    at ../octave-src/libgui/graphics/Object.cc:100
#5  0x00007f33654c1f88 in QtHandles::ObjectProxy::update (this=0x7f3341cea950,
pId=2046)
    at ../octave-src/libgui/graphics/ObjectProxy.cc:89
#6  0x00007f336549b0e5 in QtHandles::Backend::update (this=0x7f33406b65c0,
go=..., pId=2046)
    at ../octave-src/libgui/graphics/Backend.cc:148
#7  0x00007f3364b16f6f in graphics_toolkit::update (this=0x7ffc9045e7d0,
go=..., id=2046)
    at libinterp/corefcn/graphics.h:2216
#8  0x00007f3364b19806 in base_graphics_object::update (this=0x7f334255c5a0,
go=..., id=2046)
    at libinterp/corefcn/graphics.h:3118
#9  0x00007f3364b1a205 in graphics_object::update (this=0x7ffc9045e840,
id=2046)
    at libinterp/corefcn/graphics.h:3362
#10 0x00007f33649ec66c in base_property::set (this=0x7f334255e9e8, v=...,
do_run=true, 
    do_notify_toolkit=true) at
../octave-src/libinterp/corefcn/graphics.cc:1147
#11 0x00007f33649d8871 in figure::properties::set___gl_extensions__
(this=0x7f334255c5b0, val=...)
    at libinterp/corefcn/graphics.h:4581
#12 0x00007f33649c25a9 in opengl_renderer::draw_figure (this=0x7ffc9045eb40,
props=...)
    at ../octave-src/libinterp/corefcn/gl-render.cc:691
#13 0x00007f33649c15d9 in opengl_renderer::draw (this=0x7ffc9045eb40, go=...,
toplevel=true)
    at ../octave-src/libinterp/corefcn/gl-render.cc:628
#14 0x00007f33654b8912 in QtHandles::GLCanvas::draw (this=0x1a085f0, gh=...)
    at ../octave-src/libgui/graphics/GLCanvas.cc:63
#15 0x00007f33654a68c1 in QtHandles::Canvas::canvasPaintEvent
(this=0x1a08618)
---Type <return> to continue, or q <return> to quit---
    at ../octave-src/libgui/graphics/Canvas.cc:319
#16 0x00007f33654b8cce in QtHandles::GLCanvas::paintGL (this=0x1a085f0)
    at ../octave-src/libgui/graphics/GLCanvas.cc:144
#17 0x00007f336151dba5 in QGLWidget::glDraw() () from
/usr/lib/x86_64-linux-gnu/libQtOpenGL.so.4
#18 0x00007f336151d68d in QGLWidget::paintEvent(QPaintEvent*) ()
   from /usr/lib/x86_64-linux-gnu/libQtOpenGL.so.4
#19 0x00007f3360a1b748 in QWidget::event(QEvent*) () from
/usr/lib/x86_64-linux-gnu/libQtGui.so.4
#20 0x00007f3361527511 in QGLWidget::event(QEvent*) ()
   from /usr/lib/x86_64-linux-gnu/libQtOpenGL.so.4
#21 0x00007f33609c848c in QApplicationPrivate::notify_helper(QObject*,
QEvent*) ()
   from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#22 0x00007f33609cefa8 in QApplication::notify(QObject*, QEvent*) ()
   from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#23 0x00007f336049871d in QCoreApplication::notifyInternal(QObject*, QEvent*)
()
   from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#24 0x00007f3360a15e1d in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion
const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () from
/usr/lib/x86_64-linux-gnu/libQtGui.so.4
#25 0x00007f3360be58fd in QWidgetPrivate::repaint_sys(QRegion const&) ()
   from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#26 0x00007f3360a0a4f7 in QWidgetPrivate::syncBackingStore() ()
   from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#27 0x00007f3360a1b818 in QWidget::event(QEvent*) () from
/usr/lib/x86_64-linux-gnu/libQtGui.so.4
#28 0x00007f3361527511 in QGLWidget::event(QEvent*) ()
   from /usr/lib/x86_64-linux-gnu/libQtOpenGL.so.4
#29 0x00007f33609c848c in QApplicationPrivate::notify_helper(QObject*,
QEvent*) ()
   from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#30 0x00007f33609cefa8 in QApplication::notify(QObject*, QEvent*) ()
   from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#31 0x00007f336049871d in QCoreApplication::notifyInternal(QObject*, QEvent*)
()
   from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
---Type <return> to continue, or q <return> to quit---
#32 0x00007f336049bfc1 in QCoreApplicationPrivate::sendPostedEvents(QObject*,
int, QThreadData*) ()
   from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#33 0x00007f33604c7bd3 in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#34 0x00007f335946ec5d in g_main_context_dispatch () from
/lib/x86_64-linux-gnu/libglib-2.0.so.0
#35 0x00007f335946ef48 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#36 0x00007f335946effc in g_main_context_iteration () from
/lib/x86_64-linux-gnu/libglib-2.0.so.0
#37 0x00007f33604c7d1d in
QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)
    () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#38 0x00007f3360a6cf96 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#39 0x00007f3360497271 in
QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) ()
   from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#40 0x00007f33604975d5 in
QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) ()
   from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#41 0x00007f336049d059 in QCoreApplication::exec() () from
/usr/lib/x86_64-linux-gnu/libQtCore.so.4
#42 0x00007f336542b66b in octave::gui_application::execute
(this=0x7ffc9045fdb0)
    at ../octave-src/libgui/src/octave-gui.cc:224
#43 0x00000000004016b5 in main (argc=3, argv=0x7ffc9045ffa8) at
../octave-src/src/main-gui.cc:104
(gdb) print val
Cannot access memory at address 0x10


Is there anything I can do to help debug this?




    _______________________________________________________

Reply to this item at:

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

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




reply via email to

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