bugGNU Octave - Bugs: bug #44328, segfault on...

 
 

bug #44328: segfault on QtHandles::ObjectProxy::finalize

Submitter:  Rik <rik5>
Submitted:  Fri 20 Feb 2015 09:43:50 PM UTC
   
 
Category:  Plotting Severity:  3 - Normal
Priority:  5 - Normal Item Group:  Segfault, Bus Error, etc.
Status:  Fixed Assigned to:  None
Originator Name:  Open/Closed:  * Closed
Release:  * dev Operating System:  * Any
Fixed Release:  None Planned Release:  None
* Mandatory Fields

Add a New Comment Rich Markup
   

Jump to the original submission

Thu 03 Dec 2015 04:35:09 PM UTC, comment #20: 

I was the original reporter and I can no longer reproduce this on a Windows XP virtual machine.  I am using a recent development tip 20787:62564952e161 which I have cross-compiled with MXE.  Closing report.

Rik <rik5>
Group administrator
Wed 01 Apr 2015 08:02:18 PM UTC, comment #19: 

@Rik: I agree. Time to do the release. Just wanted to
make sure that those 2 problems were not "forgotten."

The current dev system is vastly better than the
(long ago) previous release.


Michael Godfrey <godfrey>
Group Member
Wed 01 Apr 2015 06:06:17 PM UTC, comment #18: 

@Michael: Not the memory leaks.  They are a performance issue, rather than a correctness issue, and the leak itself is small and slow.

The pause bug (bug #44661) is a problem I would like to see fixed, but I'm also willing to let it go.  We have an enormous backlog of features that really needs to get out and get tested.  That latter fact is weighing on my mind more and more.

Rik <rik5>
Group administrator
Wed 01 Apr 2015 05:57:20 PM UTC, comment #17: 

Rik: Do your think that the pause() problem
or the memory leaks that you reported need attention befor 4.0.0?

Michael Godfrey <godfrey>
Group Member
Wed 01 Apr 2015 05:53:25 PM UTC, comment #16: 

@jwe: Avinoam also reports in comment #2 that he has success with Win 7, but failures with Windows XP.  We could just declare Windows XP an unsupported OS, although Matlab is still supporting it (bug fixes only, not for new development).

I think Windows XP is really "the canary in the coal mine" for whatever the root problem is with Qt graphics and Octave, but I would be happy to move on.  These segfaults are the last thing I see preventing us from releasing 4.0.0.

Rik <rik5>
Group administrator
Wed 01 Apr 2015 04:36:29 PM UTC, comment #15: 

I'm able to run test graphics.cc-tst numerous times on a Windows 7 system running in a virtual box VM.  I ran it in a while loop, I interrupted it after about 25 iterations.  I'm using a build of 4.0.0-rc2.

John W. Eaton <jwe>
Group administrator
Tue 31 Mar 2015 12:06:18 AM UTC, comment #14: 

Also, check bug #44459 which has segfaults with graphics while run on Windows XP.  This may be something with that old operating system, but it sure feels like there is still a race condition or other bug in the graphics code.

Rik <rik5>
Group administrator
Mon 30 Mar 2015 09:33:47 PM UTC, comment #13: 

I can still get the originally reported problem to segfault which is running 'test graphics.cc-tst' on Windows XP.  It fails nearly every time, but certainly running it 4 times in a row is enough.  When I run under gdb the segfault disappears.

Rik <rik5>
Group administrator
Mon 30 Mar 2015 02:52:21 PM UTC, comment #12: 

Still no confirmation that this was a QtHandles-only problem? I would like to fix the root problem if at all possible. Otherwise, we might run into it again.

Jordi Gutiérrez Hermoso <jordigh>
Group Member
Mon 30 Mar 2015 11:56:14 AM UTC, comment #11: 

Is there any progress on the hydra build (at least it has not failed for a few days), do the examples in comment #7 still segfault consistently? What about the segfaults on XP?

The patch seems to have "solved" (avoided, hidden ...) bug #44621: reseting the toolkit to the same value was useless (that's why I pushed the patch) but should not have been armful. If the crashes here also have disappeared it is at least a clue if not a satisfactory ending.

Pantxo Diribarne <pantxo>
Group Member
Fri 27 Mar 2015 08:01:22 AM UTC, comment #10: 

Sorry the patch I sent was wrong (forgot to "hg qref") but I pushed the fixed version anyway: it doesn't hurt even if it doesn't fix the bug here.

http://hg.savannah.gnu.org/hgweb/octave/rev/3f461c2b990e

Pantxo Diribarne <pantxo>
Group Member
Fri 27 Mar 2015 12:23:45 AM UTC, comment #9: 

For what it's worth, the examples which crash on Hydra do not crash on Windows XP.  The failing example there was 'test graphics.cc-tst' and in that file each of the figures is invisible so that part looks common to both failures.

Rik <rik5>
Group administrator
Fri 27 Mar 2015 12:14:21 AM UTC, comment #8: 

Hi,

@Mike: are you able to test patches on the hydra build? If so can you try the attached changeset that avoids an update of the toolkit (finalize/initialize new window) when resetting it to the same value ("qt" here).

(file #33465)

Pantxo Diribarne <pantxo>
Group Member
Thu 26 Mar 2015 02:01:54 AM UTC, comment #7: 

We do have debug symbols available for all Octave code, I can poke at whatever you think might be useful.

Anyway, I worked out a couple of minimal examples that demonstrate the segfault every time on the hydra built Octave:


graphics_toolkit qt
hf = figure ("visible", "off"); reset (hf); close (hf);


or this:


graphics_toolkit qt
hf = figure ();
close (hf);
hf = figure ("visible", "off");
reset (hf);  ## segfault


The following does not segfault:


graphics_toolkit qt
hf = figure (); reset (hf); close (hf);
hf = figure ("visible", "off"); close (hf);


IOW, the reset has to be done on a figure created with "visible" = "off", and it has to be on the same line as a close or after a close has been performed at least once on any figure.

And of course none of these segfault for me on Debian.

Mike Miller <mtmiller>
Group Member
Wed 25 Mar 2015 05:39:58 PM UTC, comment #6: 

Hm, tantalising! Maybe we should modify the Hydra build to compile debug symbols in.

At any rate, I think this is pretty damning evidence towards QtHandles and away from being a Windows-specific problem. I'm retitling the bug accordingly.

Jordi Gutiérrez Hermoso <jordigh>
Group Member
Tue 24 Mar 2015 11:28:34 PM UTC, comment #5: 

I managed to get a backtrace from the segfault on the hydra autobuilder:


#0  0x00007ffff7ff2000 in ?? ()
#1  0x00007ffff526c265 in QObject::disconnect(QObject const*, char const*, QObject const*, char const*) () from /nix/store/67hzsbqhv00xd6ryimds50imjz6h26nb-qt-4.8.6/lib/libQtCore.so.4
#2  0x00007ffff7b0bd86 in QtHandles::ObjectProxy::init (this=0x7fffd8770660, obj=0x0) at graphics/ObjectProxy.cc:51
#3  0x00007ffff7b0bfe4 in QtHandles::ObjectProxy::finalize (this=<optimized out>) at graphics/ObjectProxy.cc:96
#4  0x00007ffff7aef1d1 in QtHandles::Backend::finalize (this=<optimized out>, go=...) at graphics/Backend.cc:159
#5  0x00007ffff72867a2 in finalize (go=..., this=0x7fffdfd21ad0) at corefcn/graphics.h:2277
#6  base_graphics_object::finalize (this=0x7fffd89c0fd0, go=...) at corefcn/graphics.h:3196
#7  0x00007ffff71dac35 in finalize (this=0x7fffdfd21b00) at corefcn/graphics.h:3441
#8  finalize_r (h=...) at corefcn/graphics.cc:1776
#9  0x00007ffff71ee1c6 in figure::properties::set_toolkit (this=0x7fffd89c0fe0, b=...) at corefcn/graphics.cc:1800
#10 0x00007ffff72a1e12 in figure::properties::set___graphics_toolkit__ (this=0x7fffd89c0fe0, val=...) at corefcn/graphics.h:3931
#11 0x00007ffff72515f8 in figure::properties::set (this=this@entry=0x7fffd89c0fe0, pname_arg=..., val=...) at corefcn/graphics-props.cc:950
#12 0x00007ffff72ae7df in figure::set (this=0x7fffd89c0fd0, name=..., value=...) at corefcn/graphics.h:4931
#13 0x00007ffff71db4c8 in set (val=..., name=..., this=0x7fffdfd22180) at corefcn/graphics.h:3275
#14 xreset_default_properties (gh=..., factory_pval=...) at corefcn/graphics.cc:2859
#15 0x00007ffff71dbe6d in figure::reset_default_properties (this=0x7fffd89c0fd0) at corefcn/graphics.cc:4643
#16 0x00007ffff720cb4b in reset_default_properties (this=0x7fffdfd22410) at corefcn/graphics.h:3446
#17 Freset (args=...) at corefcn/graphics.cc:9689
#18 0x00007ffff6ec8b6c in octave_builtin::do_multi_index_op (this=0x7fffd82059b0, nargout=0, args=..., lvalue_list=<optimized out>) at octave-value/ov-builtin.cc:131
#19 0x00007ffff6ec7da1 in octave_builtin::subsref (this=0x7fffd82059b0, type=..., idx=..., nargout=0, lvalue_list=lvalue_list@entry=0x0) at octave-value/ov-builtin.cc:63
#20 0x00007ffff6ec844c in octave_builtin::subsref (this=<optimized out>, type=..., idx=..., nargout=<optimized out>) at octave-value/ov-builtin.cc:46
#21 0x00007ffff6fa96d9 in octave_value::subsref (this=<optimized out>, type=..., idx=..., nargout=<optimized out>) at octave-value/ov.cc:1302
#22 0x00007ffff6fa9755 in octave_value::subsref (this=this@entry=0x7fffdfd22960, type=..., idx=..., nargout=nargout@entry=0, lvalue_list=lvalue_list@entry=0x0) at octave-value/ov.cc:1313
#23 0x00007ffff7016668 in tree_index_expression::rvalue (this=<optimized out>, nargout=0, lvalue_list=lvalue_list@entry=0x0) at parse-tree/pt-idx.cc:436
#24 0x00007ffff701715b in tree_index_expression::rvalue (this=<optimized out>, nargout=<optimized out>) at parse-tree/pt-idx.cc:284
#25 0x00007ffff70136ae in tree_index_expression::rvalue1 (this=0x7fffd8d72130, nargout=0) at parse-tree/pt-idx.cc:466
#26 0x00007ffff700a788 in tree_evaluator::visit_statement (this=<optimized out>, stmt=...) at parse-tree/pt-eval.cc:744
#27 0x00007ffff7009dd1 in tree_evaluator::visit_statement_list ( this=0x7ffff79bd5c0 <std_evaluator>, lst=...) at parse-tree/pt-eval.cc:794
#28 0x00007ffff700c7be in tree_evaluator::visit_unwind_protect_command ( this=0x7ffff79bd5c0 <std_evaluator>, cmd=...) at parse-tree/pt-eval.cc:1045
#29 0x00007ffff700a6c5 in tree_evaluator::visit_statement ( this=0x7ffff79bd5c0 <std_evaluator>, stmt=...) at parse-tree/pt-eval.cc:718
#30 0x00007ffff7009dd1 in tree_evaluator::visit_statement_list ( this=0x7ffff79bd5c0 <std_evaluator>, lst=...) at parse-tree/pt-eval.cc:794
#31 0x00007ffff6fa0953 in octave_user_function::do_multi_index_op (this=0x7fffd8bb9bd0, nargout=0, _args=..., lvalue_list=0x0) at octave-value/ov-usr-fcn.cc:626
#32 0x00007ffff6f9cbf5 in octave_user_function::subsref (this=0x7fffd8bb9bd0, type=..., idx=..., nargout=0, lvalue_list=lvalue_list@entry=0x0) at octave-value/ov-usr-fcn.cc:438
#33 0x00007ffff6f9cdbc in octave_user_function::subsref (this=<optimized out>, type=..., idx=..., nargout=<optimized out>) at octave-value/ov-usr-fcn.cc:421
#34 0x00007ffff6fa96d9 in octave_value::subsref (this=<optimized out>, type=..., idx=..., nargout=<optimized out>) at octave-value/ov.cc:1302
#35 0x00007ffff6fa9755 in octave_value::subsref (this=this@entry=0x7fffdfd234e0, type=..., idx=..., nargout=nargout@entry=0, lvalue_list=lvalue_list@entry=0x0) at octave-value/ov.cc:1313
#36 0x00007ffff7016668 in tree_index_expression::rvalue (this=<optimized out>, nargout=0, lvalue_list=lvalue_list@entry=0x0) at parse-tree/pt-idx.cc:436
#37 0x00007ffff701715b in tree_index_expression::rvalue (this=<optimized out>, nargout=<optimized out>) at parse-tree/pt-idx.cc:284
#38 0x00007ffff7047d20 in eval_string (eval_str=..., silent=silent@entry=false, parse_status=@0x7fffdfd239fc: 0, nargout=nargout@entry=0) at parse-tree/oct-parse.yy:4845
#39 0x00007ffff704808d in eval_string (arg=..., silent=silent@entry=false, parse_status=@0x7fffdfd239fc: 0, nargout=nargout@entry=0) at parse-tree/oct-parse.yy:4898
#40 0x00007ffff70481a9 in Feval (args=..., nargout=0) at parse-tree/oct-parse.yy:4964
#41 0x00007ffff6ec8b6c in octave_builtin::do_multi_index_op (this=0x7fffd827f710, nargout=0, args=..., lvalue_list=<optimized out>) at octave-value/ov-builtin.cc:131
#42 0x00007ffff6ec7da1 in octave_builtin::subsref (this=0x7fffd827f710, type=..., idx=..., nargout=0, lvalue_list=lvalue_list@entry=0x0) at octave-value/ov-builtin.cc:63
#43 0x00007ffff6ec844c in octave_builtin::subsref (this=<optimized out>, type=..., idx=..., nargout=<optimized out>) at octave-value/ov-builtin.cc:46
#44 0x00007ffff6fa96d9 in octave_value::subsref (this=<optimized out>, type=..., idx=..., nargout=<optimized out>) at octave-value/ov.cc:1302
#45 0x00007ffff6fa9755 in octave_value::subsref (this=this@entry=0x7fffdfd23f60, type=..., idx=..., nargout=nargout@entry=0, lvalue_list=lvalue_list@entry=0x0) at octave-value/ov.cc:1313
#46 0x00007ffff7016668 in tree_index_expression::rvalue (this=<optimized out>, nargout=0, lvalue_list=lvalue_list@entry=0x0) at parse-tree/pt-idx.cc:436
#47 0x00007ffff701715b in tree_index_expression::rvalue (this=<optimized out>, nargout=<optimized out>) at parse-tree/pt-idx.cc:284
#48 0x00007ffff70136ae in tree_index_expression::rvalue1 (this=0x7fffd8739ad0, nargout=0) at parse-tree/pt-idx.cc:466
#49 0x00007ffff700a788 in tree_evaluator::visit_statement (this=<optimized out>, stmt=...) at parse-tree/pt-eval.cc:744
#50 0x00007ffff7009dd1 in tree_evaluator::visit_statement_list ( this=0x7ffff79bd5c0 <std_evaluator>, lst=...) at parse-tree/pt-eval.cc:794
#51 0x00007ffff700a6c5 in tree_evaluator::visit_statement ( this=0x7ffff79bd5c0 <std_evaluator>, stmt=...) at parse-tree/pt-eval.cc:718
#52 0x00007ffff7009dd1 in tree_evaluator::visit_statement_list ( this=0x7ffff79bd5c0 <std_evaluator>, lst=...) at parse-tree/pt-eval.cc:794
#53 0x00007ffff700b92a in tree_evaluator::visit_try_catch_command ( this=0x7ffff79bd5c0 <std_evaluator>, cmd=...) at parse-tree/pt-eval.cc:907
#54 0x00007ffff700a6c5 in tree_evaluator::visit_statement ( this=0x7ffff79bd5c0 <std_evaluator>, stmt=...) at parse-tree/pt-eval.cc:718
#55 0x00007ffff7009dd1 in tree_evaluator::visit_statement_list ( this=0x7ffff79bd5c0 <std_evaluator>, lst=...) at parse-tree/pt-eval.cc:794
#56 0x00007ffff700a6c5 in tree_evaluator::visit_statement ( this=0x7ffff79bd5c0 <std_evaluator>, stmt=...) at parse-tree/pt-eval.cc:718
#57 0x00007ffff7009dd1 in tree_evaluator::visit_statement_list ( this=0x7ffff79bd5c0 <std_evaluator>, lst=...) at parse-tree/pt-eval.cc:794
#58 0x00007ffff700c7be in tree_evaluator::visit_unwind_protect_command ( this=0x7ffff79bd5c0 <std_evaluator>, cmd=...) at parse-tree/pt-eval.cc:1045
#59 0x00007ffff700a6c5 in tree_evaluator::visit_statement ( this=0x7ffff79bd5c0 <std_evaluator>, stmt=...) at parse-tree/pt-eval.cc:718
#60 0x00007ffff7009dd1 in tree_evaluator::visit_statement_list ( this=0x7ffff79bd5c0 <std_evaluator>, lst=...) at parse-tree/pt-eval.cc:794
#61 0x00007ffff700ad82 in tree_evaluator::visit_simple_for_command ( this=0x7ffff79bd5c0 <std_evaluator>, cmd=...) at parse-tree/pt-eval.cc:349
#62 0x00007ffff700a6c5 in tree_evaluator::visit_statement ( this=0x7ffff79bd5c0 <std_evaluator>, stmt=...) at parse-tree/pt-eval.cc:718
#63 0x00007ffff7009dd1 in tree_evaluator::visit_statement_list ( this=0x7ffff79bd5c0 <std_evaluator>, lst=...) at parse-tree/pt-eval.cc:794
#64 0x00007ffff6fa0953 in octave_user_function::do_multi_index_op (this=0x7fffd8750d50, nargout=0, _args=..., lvalue_list=0x0) at octave-value/ov-usr-fcn.cc:626
#65 0x00007ffff6f9cbf5 in octave_user_function::subsref (this=0x7fffd8750d50, type=..., idx=..., nargout=0, lvalue_list=lvalue_list@entry=0x0) at octave-value/ov-usr-fcn.cc:438
#66 0x00007ffff6f9cdbc in octave_user_function::subsref (this=<optimized out>, type=..., idx=..., nargout=<optimized out>) at octave-value/ov-usr-fcn.cc:421
#67 0x00007ffff6fa96d9 in octave_value::subsref (this=<optimized out>, type=..., idx=..., nargout=<optimized out>) at octave-value/ov.cc:1302
#68 0x00007ffff6fa9755 in octave_value::subsref (this=this@entry=0x7fffdfd25140, type=..., idx=..., nargout=nargout@entry=0, lvalue_list=lvalue_list@entry=0x0) at octave-value/ov.cc:1313
#69 0x00007ffff7016668 in tree_index_expression::rvalue (this=<optimized out>, nargout=0, lvalue_list=lvalue_list@entry=0x0) at parse-tree/pt-idx.cc:436
#70 0x00007ffff701715b in tree_index_expression::rvalue (this=<optimized out>, nargout=<optimized out>) at parse-tree/pt-idx.cc:284
#71 0x00007ffff70136ae in tree_index_expression::rvalue1 (this=0x7fffd8686010, nargout=0) at parse-tree/pt-idx.cc:466
#72 0x00007ffff700a788 in tree_evaluator::visit_statement (this=<optimized out>, stmt=...) at parse-tree/pt-eval.cc:744
#73 0x00007ffff7009dd1 in tree_evaluator::visit_statement_list ( this=0x7ffff79bd5c0 <std_evaluator>, lst=...) at parse-tree/pt-eval.cc:794
#74 0x00007ffff742173d in main_loop () at corefcn/toplev.cc:599
#75 0x00007ffff6bd5ece in octave_execute_interpreter () at octave.cc:919
#76 0x00007ffff52713ee in QObject::event(QEvent*) () from /nix/store/67hzsbqhv00xd6ryimds50imjz6h26nb-qt-4.8.6/lib/libQtCore.so.4
#77 0x00007ffff57c5fec in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /nix/store/67hzsbqhv00xd6ryimds50imjz6h26nb-qt-4.8.6/lib/libQtGui.so.4
#78 0x00007ffff57cc52d in QApplication::notify(QObject*, QEvent*) () from /nix/store/67hzsbqhv00xd6ryimds50imjz6h26nb-qt-4.8.6/lib/libQtGui.so.4
#79 0x00007ffff525942d in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /nix/store/67hzsbqhv00xd6ryimds50imjz6h26nb-qt-4.8.6/lib/libQtCore.so.4
#80 0x00007ffff525c54d in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /nix/store/67hzsbqhv00xd6ryimds50imjz6h26nb-qt-4.8.6/lib/libQtCore.so.4
#81 0x00007ffff52866b3 in ?? () from /nix/store/67hzsbqhv00xd6ryimds50imjz6h26nb-qt-4.8.6/lib/libQtCore.so.4
#82 0x00007fffead0a334 in g_main_context_dispatch () from /nix/store/dh5ksjliy29hcl2wh1gd8k8fln6n4k7s-glib-2.42.1/lib/libglib-2.0.so.0
#83 0x00007fffead0a578 in g_main_context_iterate.isra () from /nix/store/dh5ksjliy29hcl2wh1gd8k8fln6n4k7s-glib-2.42.1/lib/libglib-2.0.so.0
#84 0x00007fffead0a61c in g_main_context_iteration () from /nix/store/dh5ksjliy29hcl2wh1gd8k8fln6n4k7s-glib-2.42.1/lib/libglib-2.0.so.0
#85 0x00007ffff5285f75 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /nix/store/67hzsbqhv00xd6ryimds50imjz6h26nb-qt-4.8.6/lib/libQtCore.so.4
#86 0x00007ffff5257fef in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /nix/store/67hzsbqhv00xd6ryimds50imjz6h26nb-qt-4.8.6/lib/libQtCore.so.4
#87 0x00007ffff52582e5 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /nix/store/67hzsbqhv00xd6ryimds50imjz6h26nb-qt-4.8.6/lib/libQtCore.so.4
#88 0x00007ffff515561f in QThread::exec() () from /nix/store/67hzsbqhv00xd6ryimds50imjz6h26nb-qt-4.8.6/lib/libQtCore.so.4
#89 0x00007ffff5157c9f in ?? () from /nix/store/67hzsbqhv00xd6ryimds50imjz6h26nb-qt-4.8.6/lib/libQtCore.so.4
#90 0x00007ffff1ef6374 in start_thread () from /nix/store/la5imi1602jxhpds9675n2n2d0683lbq-glibc-2.20/lib/libpthread.so.0
#91 0x00007fffebd0af9d in clone () from /nix/store/la5imi1602jxhpds9675n2n2d0683lbq-glibc-2.20/lib/libc.so.6


Certainly looks very similar. I can reproduce it every time with the hydra built Octave.

Mike Miller <mtmiller>
Group Member
Tue 24 Mar 2015 08:25:19 PM UTC, comment #4: 

We're seeing a segfault at the same location in the Hydra build (warning, unstable url):

http://hydra.nixos.org/build/20635689

The problem may well be unrelated to Windows. The stack trace points to QtHandles.

Jordi Gutiérrez Hermoso <jordigh>
Group Member
Fri 20 Mar 2015 06:53:59 PM UTC, comment #3: 

I have a backtrace now from a recent development version (19969:3f3418ccd6d4)


#0  0x27f27fbf in ?? ()
#1  0x698a91c1 in QtHandles::ObjectProxy::init (this=0x2a4c7069, this@entry=0x2a58c1f8,
    obj=obj@entry=0x0)
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libgui/graphics/ObjectProx
y.cc:51
#2  0x698a9419 in QtHandles::ObjectProxy::finalize (this=this@entry=0x2a58c1f8)
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libgui/graphics/ObjectProx
y.cc:96
#3  0x6988d529 in _fu1177___ZNSs4_Rep20_S_empty_rep_storageE ()
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libgui/graphics/Backend.cc
:159
#4  0x00b61660 in finalize (go=..., this=0x2557b778) at corefcn/graphics.h:2277
#5  finalize (go=..., this=0x2a49e560) at corefcn/graphics.h:3196
#6  finalize (this=0x2557b774) at corefcn/graphics.h:3441
#7  _fu19515___ZNSs4_Rep20_S_empty_rep_storageE ()
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/corefcn/graphics
.cc:1776
#8  0x00b619f7 in _fu19519___ZNSs4_Rep20_S_empty_rep_storageE ()
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/corefcn/graphics
.cc:1800
#9  0x00ede614 in _fu22155___ZNSs4_Rep20_S_empty_rep_storageE () at corefcn/graphics.h:3931
#10 0x00b66c53 in _fu19616___ZNSs4_Rep20_S_empty_rep_storageE ()
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/corefcn/graphics
-props.cc:950
#11 0x00ee0412 in _fu22161___ZNSs4_Rep20_S_empty_rep_storageE () at corefcn/graphics.h:4931
#12 0x00b5ff3f in set (val=..., name=..., this=0x2557ba60) at corefcn/graphics.h:3275
#13 _fu19469___ZNSs4_Rep20_S_empty_rep_storageE ()
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/corefcn/graphics
.cc:2859
#14 0x00b60974 in _fu19496___ZNSs4_Rep20_S_empty_rep_storageE ()
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/corefcn/graphics
.cc:4643
#15 0x00b309c4 in reset_default_properties (this=0x2557bb8c) at corefcn/graphics.h:3446
#16 Freset (args=...)
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/corefcn/graphics
.cc:9689
#17 0x0081229d in _fu4902___ZNSs4_Rep20_S_empty_rep_storageE ()
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/octave-value/ov-
builtin.cc:131
#18 0x00810c1f in octave_builtin::subsref (this=this@entry=0x252d1be8, type=..., idx=...,
    nargout=nargout@entry=0, lvalue_list=lvalue_list@entry=0x0)
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/octave-value/ov-
builtin.cc:63
#19 0x00811b32 in octave_builtin::subsref (this=0x252d1be8, type=..., idx=..., nargout=0)
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/octave-value/ov-
builtin.cc:46
#20 0x008b6c42 in octave_value::subsref (this=this@entry=0x2557bee0, type=..., idx=...,
    nargout=nargout@entry=0)
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/octave-value/ov.
cc:1302
#21 0x008b6d24 in octave_value::subsref (this=0x2557bee0, type=..., idx=..., nargout=0,
    lvalue_list=0x0)
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/octave-value/ov.
cc:1313
#22 0x008ff500 in tree_index_expression::rvalue (this=this@entry=0x27f44f20,
    nargout=nargout@entry=0, lvalue_list=lvalue_list@entry=0x0)
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/parse-tree/pt-id
x.cc:436
#23 0x009003ec in rvalue (nargout=0, this=0x27f44f20)
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/parse-tree/pt-id
x.cc:284
#24 tree_index_expression::rvalue1 (this=0x27f44f20, nargout=0)
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/parse-tree/pt-id
x.cc:466
#25 0x008ee1a1 in tree_evaluator::visit_statement (this=<optimized out>, stmt=...)
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/parse-tree/pt-ev
al.cc:744
#26 0x008ed922 in _fu29867__octave_signal_caught ()
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/parse-tree/pt-ev
al.cc:794
#27 0x008f09cf in tree_evaluator::visit_unwind_protect_command (this=0x1384914 <std_evaluator>,
    cmd=...)
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/parse-tree/pt-ev
al.cc:1045
#28 0x008ee122 in tree_evaluator::visit_statement (this=0x1384914 <std_evaluator>, stmt=...)
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/parse-tree/pt-ev
al.cc:718
#29 0x008ed922 in _fu29867__octave_signal_caught ()
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/parse-tree/pt-ev
al.cc:794
#30 0x008b4400 in _fu8254___ZNSs4_Rep20_S_empty_rep_storageE ()
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/octave-value/ov-
usr-fcn.cc:626
#31 0x008b0007 in octave_user_function::subsref (this=this@entry=0x25a94ef0, type=..., idx=...,
    nargout=nargout@entry=0, lvalue_list=lvalue_list@entry=0x0)
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/octave-value/ov-
usr-fcn.cc:438
#32 0x008b01a2 in octave_user_function::subsref (this=0x25a94ef0, type=..., idx=..., nargout=0)
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/octave-value/ov-
usr-fcn.cc:421
#33 0x008b6c42 in octave_value::subsref (this=this@entry=0x2557c630, type=..., idx=...,
    nargout=nargout@entry=0)
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/octave-value/ov.
cc:1302
#34 0x008b6d24 in octave_value::subsref (this=0x2557c630, type=..., idx=..., nargout=0,
    lvalue_list=0x0)
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/octave-value/ov.
cc:1313
#35 0x008ff500 in tree_index_expression::rvalue (this=this@entry=0x2827b088,
    nargout=nargout@entry=0, lvalue_list=lvalue_list@entry=0x0)
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/parse-tree/pt-id
x.cc:436
#36 0x009004e2 in tree_index_expression::rvalue (this=0x2827b088, nargout=0)
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/parse-tree/pt-id
x.cc:284
#37 0x00934fe1 in _fu9635___ZNSs4_Rep20_S_empty_rep_storageE () at oct-parse.yy:4845
#38 0x00935281 in _fu9636___ZNSs4_Rep20_S_empty_rep_storageE () at oct-parse.yy:4898
#39 0x009357dd in Feval (args=..., nargout=0) at oct-parse.yy:4964
#40 0x0081229d in _fu4902___ZNSs4_Rep20_S_empty_rep_storageE ()
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/octave-value/ov-
builtin.cc:131
#41 0x00810c1f in octave_builtin::subsref (this=this@entry=0x2594f018, type=..., idx=...,
    nargout=nargout@entry=0, lvalue_list=lvalue_list@entry=0x0)
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/octave-value/ov-
builtin.cc:63
#42 0x00811b32 in octave_builtin::subsref (this=0x2594f018, type=..., idx=..., nargout=0)
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/octave-value/ov-
builtin.cc:46
#43 0x008b6c42 in octave_value::subsref (this=this@entry=0x2557cc80, type=..., idx=...,
    nargout=nargout@entry=0)
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/octave-value/ov.
cc:1302
#44 0x008b6d24 in octave_value::subsref (this=0x2557cc80, type=..., idx=..., nargout=0,
    lvalue_list=0x0)
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/octave-value/ov.
cc:1313
#45 0x008ff500 in tree_index_expression::rvalue (this=this@entry=0x27e05158,
    nargout=nargout@entry=0, lvalue_list=lvalue_list@entry=0x0)
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/parse-tree/pt-id
x.cc:436
#46 0x009003ec in rvalue (nargout=0, this=0x27e05158)
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/parse-tree/pt-id
x.cc:284
#47 tree_index_expression::rvalue1 (this=0x27e05158, nargout=0)
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/parse-tree/pt-id
x.cc:466
#48 0x008ee1a1 in tree_evaluator::visit_statement (this=<optimized out>, stmt=...)
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/parse-tree/pt-ev
al.cc:744
#49 0x008ed922 in _fu29867__octave_signal_caught ()
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/parse-tree/pt-ev
al.cc:794
#50 0x008ee122 in tree_evaluator::visit_statement (this=0x1384914 <std_evaluator>, stmt=...)
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/parse-tree/pt-ev
al.cc:718
#51 0x008ed922 in _fu29867__octave_signal_caught ()
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/parse-tree/pt-ev
al.cc:794
#52 0x008eed6a in tree_evaluator::visit_try_catch_command (this=<optimized out>, cmd=...)
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/parse-tree/pt-ev
al.cc:907
#53 0x008ee122 in tree_evaluator::visit_statement (this=0x1384914 <std_evaluator>, stmt=...)
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/parse-tree/pt-ev
al.cc:718
#54 0x008ed922 in _fu29867__octave_signal_caught ()
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/parse-tree/pt-ev
al.cc:794
#55 0x008ee122 in tree_evaluator::visit_statement (this=0x1384914 <std_evaluator>, stmt=...)
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/parse-tree/pt-ev
al.cc:718
#56 0x008ed922 in _fu29867__octave_signal_caught ()
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/parse-tree/pt-ev
al.cc:794
#57 0x008f09cf in tree_evaluator::visit_unwind_protect_command (this=0x1384914 <std_evaluator>,
    cmd=...)
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/parse-tree/pt-ev
al.cc:1045
#58 0x008ee122 in tree_evaluator::visit_statement (this=0x1384914 <std_evaluator>, stmt=...)
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/parse-tree/pt-ev
al.cc:718
#59 0x008ed922 in _fu29867__octave_signal_caught ()
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/parse-tree/pt-ev
al.cc:794
#60 0x008efef6 in tree_evaluator::visit_simple_for_command (this=<optimized out>, cmd=...)
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/parse-tree/pt-ev
al.cc:349
#61 0x008ee122 in tree_evaluator::visit_statement (this=0x1384914 <std_evaluator>, stmt=...)
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/parse-tree/pt-ev
al.cc:718
#62 0x008ed922 in _fu29867__octave_signal_caught ()
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/parse-tree/pt-ev
al.cc:794
#63 0x008b4400 in _fu8254___ZNSs4_Rep20_S_empty_rep_storageE ()
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/octave-value/ov-
usr-fcn.cc:626
#64 0x008b0007 in octave_user_function::subsref (this=this@entry=0x27e1b8d0, type=..., idx=...,
    nargout=nargout@entry=0, lvalue_list=lvalue_list@entry=0x0)
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/octave-value/ov-
usr-fcn.cc:438
#65 0x008b01a2 in octave_user_function::subsref (this=0x27e1b8d0, type=..., idx=..., nargout=0)
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/octave-value/ov-
usr-fcn.cc:421
#66 0x008b6c42 in octave_value::subsref (this=this@entry=0x2557d820, type=..., idx=...,
    nargout=nargout@entry=0)
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/octave-value/ov.
cc:1302
#67 0x008b6d24 in octave_value::subsref (this=0x2557d820, type=..., idx=..., nargout=0,
    lvalue_list=0x0)
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/octave-value/ov.
cc:1313
#68 0x008ff500 in tree_index_expression::rvalue (this=this@entry=0x2a4e7e78,
    nargout=nargout@entry=0, lvalue_list=lvalue_list@entry=0x0)
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/parse-tree/pt-id
x.cc:436
#69 0x009003ec in rvalue (nargout=0, this=0x2a4e7e78)
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/parse-tree/pt-id
x.cc:284
#70 tree_index_expression::rvalue1 (this=0x2a4e7e78, nargout=0)
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/parse-tree/pt-id
x.cc:466
#71 0x008ee1a1 in tree_evaluator::visit_statement (this=<optimized out>, stmt=...)
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/parse-tree/pt-ev
al.cc:744
#72 0x008ed922 in _fu29867__octave_signal_caught ()
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/parse-tree/pt-ev
al.cc:794
#73 0x00d329a4 in _fu27805___ZNSs4_Rep20_S_empty_rep_storageE ()
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/corefcn/toplev.c
c:599
#74 0x004847d1 in _fu356___ZNSs4_Rep20_S_empty_rep_storageE ()
    at /home/rik/wip/Projects_Mine/mxe-octave/tmp-octave/octave-4.0.0-rc1/libinterp/octave.cc:919
#75 0x1f8c737a in ZN14QMetaCallEvent13placeMetaCallEP7QObject ()
   from c:\Octave\Octave-4.0.0-rc1\bin\QtCore4.dll
#76 0x25290ce8 in ?? ()
#77 0x679117fa in ZN19QApplicationPrivate13notify_helperEP7QObjectP6QEvent ()
   from c:\Octave\Octave-4.0.0-rc1\bin\QtGui4.dll
#78 0x00000004 in ?? ()
#79 0x00000000 in ?? ()



Rik <rik5>
Group administrator
Fri 20 Feb 2015 11:07:57 PM UTC, comment #2: 

I have seen this problem too on a Windows XP non virtual machine,
but not on Win7 machine.

Avinoam Kalma <avinoam>
Group Member
Fri 20 Feb 2015 10:34:06 PM UTC, comment #1: 

Just for ease, I'm uploading the file graphics.cc-tst.  Otherwise, you have to hunt for it in the install directory under share/octave/...

(file #33142)

Rik <rik5>
Group administrator
Fri 20 Feb 2015 09:43:50 PM UTC, original submission:  

This is on a Windows XP virtual machine with a very new build of MXE-Octave.  It happens in the CLI or in the GUI.  Sometimes I have to run the command twice, but it usually does it on the first time.

Rik <rik5>
Group administrator

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:
   
   
Comment:
   

Attached Files
file #33465:  fix_reset_tookit.patch added by pantxo (891B - text/x-diff)
file #33142:  graphics.cc-tst added by rik5 (18KiB - application/octet-stream)

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by godfrey (Posted a comment)
  • -email is unavailable- added by jwe (Posted a comment)
  • -email is unavailable- added by pantxo (Updated the item)
  • -email is unavailable- added by mtmiller (Posted a comment)
  • -email is unavailable- added by jordigh (Posted a comment)
  • -email is unavailable- added by avinoam (Posted a comment)
  • -email is unavailable- added by rik5 (Submitted the item)
  •  

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

    Only group members can vote.

     

    Follow 8 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2015-12-03 rik5 StatusConfirmed Fixed
        Open/ClosedOpen Closed
    2015-03-27 pantxo Attached File- Added fix_reset_tookit.patch, #33465
    2015-03-25 jordigh Operating SystemMicrosoft Windows Any
        Summarysegfault on Windows XP running \'test graphics.cc-tst\' segfault on QtHandles::ObjectProxy::finalize
    2015-03-20 rik5 StatusNone Confirmed
    2015-02-27 rik5 Summarysegfault on Windows running \'test graphics.cc-tst\' segfault on Windows XP running 'test graphics.cc-tst'
    2015-02-20 rik5 Attached File- Added graphics.cc-tst, #33142

    Back to the top

    Powered by Savane 3.13-4448.
    Corresponding source code