Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Crash on exit #60

Closed
nickodell opened this issue Oct 23, 2017 · 5 comments
Closed

Crash on exit #60

nickodell opened this issue Oct 23, 2017 · 5 comments

Comments

@nickodell
Copy link
Contributor

nickodell commented Oct 23, 2017

Revision: a7ffb99

Reproduction steps:

  1. Open Studio
  2. Close Studio by clicking x in upper right corner.

This can trigger one of two errors.

Error message type 1:

QWidget::setWindowModified: The window title does not contain a '[*]' placeholder
Studio: /usr/include/eigen3/Eigen/src/Core/DenseCoeffsBase.h:365: Eigen::DenseCoeffsBase<Derived, 1>::Scalar& Eigen::DenseCoeffsBase<Derived, 1>::operator()(Eigen::Index, Eigen::Index) [with Derived = Eigen::Array<float, -1, 256, 1>; Eigen::DenseCoeffsBase<Derived, 1>::Scalar = float; Eigen::Index = long int]: Assertion `row >= 0 && row < rows() && col >= 0 && col < cols()' failed.
Aborted

Stack trace type 1:

Thread 46 "Thread (pooled)" received signal SIGABRT, Aborted.
[Switching to Thread 0x7fffb77fe700 (LWP 26198)]
__GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
51	../sysdeps/unix/sysv/linux/raise.c: No such file or directory.
(gdb) bt
#0  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
#1  0x00007ffff43643fa in __GI_abort () at abort.c:89
#2  0x00007ffff435be37 in __assert_fail_base (fmt=<optimized out>, 
    assertion=assertion@entry=0x7ffff77b3cc0 "row >= 0 && row < rows() && col >= 0 && col < cols()", 
    file=file@entry=0x7ffff77b3c88 "/usr/include/eigen3/Eigen/src/Core/DenseCoeffsBase.h", line=line@entry=365, 
    function=function@entry=0x7ffff77b50c0 <Eigen::DenseCoeffsBase<Eigen::Array<float, -1, 256, 1, -1, 256>, 1>::operator()(long, long)::__PRETTY_FUNCTION__> "Eigen::DenseCoeffsBase<Derived, 1>::Scalar& Eigen::DenseCoeffsBase<Derived, 1>::operator()(Eigen::Index, Eigen::Index) [with Derived = Eigen::Array<float, -1, 256, 1>; Eigen::DenseCoeffsBase<Derived, "...) at assert.c:92
#3  0x00007ffff435bee2 in __GI___assert_fail (assertion=0x7ffff77b3cc0 "row >= 0 && row < rows() && col >= 0 && col < cols()", 
    file=0x7ffff77b3c88 "/usr/include/eigen3/Eigen/src/Core/DenseCoeffsBase.h", line=365, 
    function=0x7ffff77b50c0 <Eigen::DenseCoeffsBase<Eigen::Array<float, -1, 256, 1, -1, 256>, 1>::operator()(long, long)::__PRETTY_FUNCTION__> "Eigen::DenseCoeffsBase<Derived, 1>::Scalar& Eigen::DenseCoeffsBase<Derived, 1>::operator()(Eigen::Index, Eigen::Index) [with Derived = Eigen::Array<float, -1, 256, 1>; Eigen::DenseCoeffsBase<Derived, "...) at assert.c:101
#4  0x00007ffff75ca3bd in Eigen::DenseCoeffsBase<Eigen::Array<float, -1, 256, 1, -1, 256>, 1>::operator() (this=0x7fffc8015ef8, 
    row=3355523968, col=0) at /usr/include/eigen3/Eigen/src/Core/DenseCoeffsBase.h:364
#5  0x00007ffff75ca0a9 in Kernel::ArrayEvaluator::set (this=0x7fffc8015ee0, p=..., index=0)
    at /home/nick/ao/ao/src/../include/ao/eval/eval_array.hpp:46
#6  0x00007ffff765e8fe in Kernel::XTree<3u>::XTree(Kernel::XTreeEvaluator*, Kernel::Region<3u>, double, double, bool, std::atomic<bool>&)::{lambda(Eigen::Matrix<double, 3, 1, 0, 3, 1> const&, unsigned long)#8}::operator()(Eigen::Matrix<double, 3, 1, 0, 3, 1> const&, unsigned long) const (__closure=0x7fffb77eb6a0, v=..., i=0) at /home/nick/ao/ao/src/render/brep/xtree.cpp:341
#7  0x00007ffff765bf9c in Kernel::XTree<3u>::XTree (this=0x7fff78004360, eval=0x7fffc8015ec0, region=..., min_feature=0.10000000149011612, 
    max_err=1e-08, multithread=false, cancel=...) at /home/nick/ao/ao/src/render/brep/xtree.cpp:387
#8  0x00007ffff765ad14 in Kernel::XTree<3u>::XTree (this=0x7fff780034e0, eval=0x7fffc8015ec0, region=..., min_feature=0.10000000149011612, 
    max_err=1e-08, multithread=false, cancel=...) at /home/nick/ao/ao/src/render/brep/xtree.cpp:167
#9  0x00007ffff765ad14 in Kernel::XTree<3u>::XTree (this=0x7fff78006260, eval=0x7fffc8015ec0, region=..., min_feature=0.10000000149011612, 
    max_err=1e-08, multithread=false, cancel=...) at /home/nick/ao/ao/src/render/brep/xtree.cpp:167
#10 0x00007ffff765ad14 in Kernel::XTree<3u>::XTree (this=0x7fff78002ca0, eval=0x7fffc8015ec0, region=..., min_feature=0.10000000149011612, 
    max_err=1e-08, multithread=false, cancel=...) at /home/nick/ao/ao/src/render/brep/xtree.cpp:167
#11 0x00007ffff765ad14 in Kernel::XTree<3u>::XTree (this=0x7fff78002aa0, eval=0x7fffc8015ec0, region=..., min_feature=0.10000000149011612, 
    max_err=1e-08, multithread=false, cancel=...) at /home/nick/ao/ao/src/render/brep/xtree.cpp:167
#12 0x00007ffff765ad14 in Kernel::XTree<3u>::XTree (this=0x7fff78005b40, eval=0x7fffc8015ec0, region=..., min_feature=0.10000000149011612, 
    max_err=1e-08, multithread=false, cancel=...) at /home/nick/ao/ao/src/render/brep/xtree.cpp:167
#13 0x00007ffff765ad14 in Kernel::XTree<3u>::XTree (this=0x7fff78001a80, eval=0x7fffc8015ec0, region=..., min_feature=0.10000000149011612, 
    max_err=1e-08, multithread=false, cancel=...) at /home/nick/ao/ao/src/render/brep/xtree.cpp:167
#14 0x00007ffff765ad14 in Kernel::XTree<3u>::XTree (this=0x7fff780008e0, eval=0x7fffc8015ec0, region=..., min_feature=0.10000000149011612, 
    max_err=1e-08, multithread=false, cancel=...) at /home/nick/ao/ao/src/render/brep/xtree.cpp:167
#15 0x00007ffff765e654 in Kernel::XTree<3u>::XTree(Kernel::XTreeEvaluator*, Kernel::Region<3u>, double, double, bool, std::atomic<bool>&)::{lambda()#1}::operator()() const (__closure=0x7fffc0003198) at /home/nick/ao/ao/src/render/brep/xtree.cpp:152
#16 0x00007ffff771f3c8 in std::_Bind_simple<Kernel::XTree<3u>::XTree(Kernel::XTreeEvaluator*, Kernel::Region<3u>, double, double, bool, std::atomic<bool>&)::{lambda()#1} ()>::_M_invoke<>(std::_Index_tuple<>) (this=0x7fffc0003198) at /usr/include/c++/6/functional:1391
#17 0x00007ffff77184cd in std::_Bind_simple<Kernel::XTree<3u>::XTree(Kernel::XTreeEvaluator*, Kernel::Region<3u>, double, double, bool, std::atomic<bool>&)::{lambda()#1} ()>::operator()() (this=0x7fffc0003198) at /usr/include/c++/6/functional:1380
#18 0x00007ffff77072db in std::__future_base::_Task_setter<std::unique_ptr<std::__future_base::_Result<Kernel::XTree<3u>*>, std::__future_base::_Result_base::_Deleter>, std::_Bind_simple<Kernel::XTree<3u>::_Bind_simple(Kernel::XTreeEvaluator*, Kernel::Region<3u>, double, double, bool, std::atomic<bool>&)::{lambda()#1} ()>, Kernel::XTree<3u>*>::operator()() const (this=0x7fffb77fddf0)
    at /usr/include/c++/6/future:1325
#19 0x00007ffff76fcdec in std::_Function_handler<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> (), std::__future_base::_Task_setter<std::unique_ptr<std::__future_base::_Result<Kernel::XTree<3u>*>, std::__future_base::_Result_base::_Deleter>, std::_Bind_simple<Kernel::XTree<3u>::_Bind_simple(Kernel::XTreeEvaluator*, Kernel::Region<3u>, double, double, bool, std::atomic<bool>&)::{lambda()#1} ()>, Kernel::XTree<3u>*> >::_M_invoke(std::_Any_data const&) (__functor=...) at /usr/include/c++/6/functional:1717
#20 0x00007ffff7635f3f in std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>::operator()() const (this=0x7fffb77fddf0) at /usr/include/c++/6/functional:2127
#21 0x00007ffff7634b57 in std::__future_base::_State_baseV2::_M_do_set(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*) (this=0x7fffc0003160, __f=0x7fffb77fddf0, __did_set=0x7fffb77fdd77)
    at /usr/include/c++/6/future:533
#22 0x00007ffff763cb3d in std::__invoke_impl<void, void (std::__future_base::_State_baseV2::*)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*), std::__future_base::_State_baseV2*, std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*>(std::__invoke_memfun_deref, void (std::__future_base::_State_baseV2::*&&)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*), std::__future_base::_State_baseV2*&&, std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*&&, bool*&&) (__f=<unknown type in /home/nick/ao/build/ao/src/libao-kernel.so, CU 0x581789, DIE 0x65a9f7>, 
    __t=<unknown type in /home/nick/ao/build/ao/src/libao-kernel.so, CU 0x581789, DIE 0x5a45ef>, 
    __args#0=<unknown type in /home/nick/ao/build/ao/src/libao-kernel.so, CU 0x581789, DIE 0x65aa03>, 
    __args#1=<unknown type in /home/nick/ao/build/ao/src/libao-kernel.so, CU 0x581789, DIE 0x65aa0f>) at /usr/include/c++/6/functional:227
#23 0x00007ffff7639600 in std::__invoke<void (std::__future_base::_State_baseV2::*)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*), std::__future_base::_State_baseV2*, std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*>(void (std::__future_base::_State_baseV2::*&&)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*), std::__future_base::_State_baseV2*&&, std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*&&, bool*&&) (
    __fn=<unknown type in /home/nick/ao/build/ao/src/libao-kernel.so, CU 0x581789, DIE 0x65a9f7>, 
    __args#0=<unknown type in /home/nick/ao/build/ao/src/libao-kernel.so, CU 0x581789, DIE 0x5a45ef>, 
    __args#1=<unknown type in /home/nick/ao/build/ao/src/libao-kernel.so, CU 0x581789, DIE 0x65aa03>, 
    __args#2=<unknown type in /home/nick/ao/build/ao/src/libao-kernel.so, CU 0x581789, DIE 0x65aa0f>) at /usr/include/c++/6/functional:251
#24 0x00007ffff7635c8e in void std::call_once<void (std::__future_base::_State_baseV2::*)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*), std::__future_base::_State_baseV2*, std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*>(std::once_flag&, void (std::__future_base::_State_baseV2::*&&)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*), std::__future_base::_State_baseV2*&&, std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*&&, bool*&&)::{lambda()#1}::operator()() const (__closure=0x7fffb77fdd00) at /usr/include/c++/6/mutex:602
#25 0x00007ffff7635cf9 in void std::call_once<void (std::__future_base::_State_baseV2::*)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*), std::__future_base::_State_baseV2*, std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*>(std::once_flag&, void (std::__future_base::_State_baseV2::*&&)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*), std::__future_base::_State_baseV2*&&, std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*&&, bool*&&)::{lambda()#2}::operator()() const (__closure=0x0) at /usr/include/c++/6/mutex:607
#26 0x00007ffff7635d0a in void std::call_once<void (std::__future_base::_State_baseV2::*)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*), std::__future_base::_State_baseV2*, std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*>(std::once_flag&, void (std::__future_base::_State_baseV2::*&&)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*), std::__future_base::_State_baseV2*&&, std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*&&, bool*&&)::{lambda()#2}::_FUN() () at /usr/include/c++/6/mutex:607
#27 0x00007ffff657f739 in __pthread_once_slow (once_control=0x7fffc0003178, init_routine=0x7ffff4ca3120 <__once_proxy>)
    at pthread_once.c:116
#28 0x00007ffff762fc24 in __gthread_once (__once=0x7fffc0003178, __func=0x7ffff4ca3120 <__once_proxy>)
    at /usr/include/x86_64-linux-gnu/c++/6/bits/gthr-default.h:699
#29 0x00007ffff7635db4 in std::call_once<void (std::__future_base::_State_baseV2::*)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*), std::__future_base::_State_baseV2*, std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*>(std::once_flag&, void (std::__future_base::_State_baseV2::*&&)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*), std::__future_base::_State_baseV2*&&, std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*&&, bool*&&) (__once=..., __f=<unknown type in /home/nick/ao/build/ao/src/libao-kernel.so, CU 0x581789, DIE 0x65a9f7>, 
    __args#0=<unknown type in /home/nick/ao/build/ao/src/libao-kernel.so, CU 0x581789, DIE 0x5a45ef>, 
    __args#1=<unknown type in /home/nick/ao/build/ao/src/libao-kernel.so, CU 0x581789, DIE 0x65aa03>, 
    __args#2=<unknown type in /home/nick/ao/build/ao/src/libao-kernel.so, CU 0x581789, DIE 0x65aa0f>) at /usr/include/c++/6/mutex:614
#30 0x00007ffff7634925 in std::__future_base::_State_baseV2::_M_set_result(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>, bool) (this=0x7fffc0003160, __res=..., __ignore_failure=false)
    at /usr/include/c++/6/future:393
#31 0x00007ffff76e8861 in std::__future_base::_Async_state_impl<std::_Bind_simple<Kernel::XTree<3u>::XTree(Kernel::XTreeEvaluator*, Kernel::Region<3u>, double, double, bool, std::atomic<bool>&)::{lambda()#1} ()>, Kernel::XTree<3u>*>::_Async_state_impl(Kernel::XTree<3u>::XTree(Kernel::XTreeEvaluator*, Kernel::Region<3u>, double, double, bool, std::atomic<bool>&)::{lambda()#1} (&&)())::{lambda()#1}::operator()() const
    (__closure=0x7fffc00031d8) at /usr/include/c++/6/future:1664
#32 0x00007ffff7768992 in std::_Bind_simple<std::__future_base::_Async_state_impl<std::_Bind_simple<Kernel::XTree<3u>::XTree(Kernel::XTreeEvaluator*, Kernel::Region<3u>, double, double, bool, std::atomic<bool>&)::{lambda()#1} ()>, Kernel::XTree<3u>*>::_Async_state_impl(Kernel::XTree<3u>::XTree(Kernel::XTreeEvaluator*, Kernel::Region<3u>, double, double, bool, std::atomic<bool>&)::{lambda()#1} (&&)())::{lambda()#1} ()>::_M_invoke<>(std::_Index_tuple<>) (this=0x7fffc00031d8) at /usr/include/c++/6/functional:1391
#33 0x00007ffff776880b in std::_Bind_simple<std::__future_base::_Async_state_impl<std::_Bind_simple<Kernel::XTree<3u>::XTree(Kernel::XTreeEvaluator*, Kernel::Region<3u>, double, double, bool, std::atomic<bool>&)::{lambda()#1} ()>, Kernel::XTree<3u>*>::_Async_state_impl(Kernel::XTree<3u>::XTree(Kernel::XTreeEvaluator*, Kernel::Region<3u>, double, double, bool, std::atomic<bool>&)::{lambda()#1} (&&)())::{lambda()#1} ()>::operator()() (this=0x7fffc00031d8) at /usr/include/c++/6/functional:1380
#34 0x00007ffff7767f1e in std::thread::_State_impl<std::_Bind_simple<std::__future_base::_Async_state_impl<std::_Bind_simple<Kernel::XTree<3u>::XTree(Kernel::XTreeEvaluator*, Kernel::Region<3u>, double, double, bool, std::atomic<bool>&)::{lambda()#1} ()>, Kernel::XTree<3u>*>::_Async_state_impl(Kernel::XTree<3u>::XTree(Kernel::XTreeEvaluator*, Kernel::Region<3u>, double, double, bool, std::atomic<bool>&)::{lambda()#1} (&&)())::{lambda()#1} ()> >::_M_run() (this=0x7fffc00031d0) at /usr/include/c++/6/thread:197
#35 0x00007ffff4ca3e6f in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#36 0x00007ffff6578494 in start_thread (arg=0x7fffb77fe700) at pthread_create.c:333
#37 0x00007ffff4418aff in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:97

Error message type 2:

Studio: /home/nick/ao/ao/src/eval/eval_array.cpp:238: void Kernel::ArrayEvaluator::operator()(Kernel::Opcode::Opcode, Kernel::Clause::Id, Kernel::Clause::Id, Kernel::Clause::Id): Assertion `false' failed.

Stack trace type 2:

Thread 36 "Thread (pooled)" received signal SIGABRT, Aborted.
[Switching to Thread 0x7fffb37fe700 (LWP 27126)]
__GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
51	../sysdeps/unix/sysv/linux/raise.c: No such file or directory.
(gdb) bt
#0  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
#1  0x00007ffff43643fa in __GI_abort () at abort.c:89
#2  0x00007ffff435be37 in __assert_fail_base (fmt=<optimized out>, assertion=assertion@entry=0x7ffff77b3c01 "false", 
    file=file@entry=0x7ffff77b3bd8 "/home/nick/ao/ao/src/eval/eval_array.cpp", line=line@entry=238, 
    function=function@entry=0x7ffff77b5ac0 <Kernel::ArrayEvaluator::operator()(Kernel::Opcode::Opcode, unsigned int, unsigned int, unsigned int)::__PRETTY_FUNCTION__> "void Kernel::ArrayEvaluator::operator()(Kernel::Opcode::Opcode, Kernel::Clause::Id, Kernel::Clause::Id, Kernel::Clause::Id)") at assert.c:92
#3  0x00007ffff435bee2 in __GI___assert_fail (assertion=0x7ffff77b3c01 "false", 
    file=0x7ffff77b3bd8 "/home/nick/ao/ao/src/eval/eval_array.cpp", line=238, 
    function=0x7ffff77b5ac0 <Kernel::ArrayEvaluator::operator()(Kernel::Opcode::Opcode, unsigned int, unsigned int, unsigned int)::__PRETTY_FUNCTION__> "void Kernel::ArrayEvaluator::operator()(Kernel::Opcode::Opcode, Kernel::Clause::Id, Kernel::Clause::Id, Kernel::Clause::Id)")
    at assert.c:101
#4  0x00007ffff75c861d in Kernel::ArrayEvaluator::operator() (this=0x7fffc80967a0, op=Kernel::Opcode::INVALID, id=0, a=2, b=11)
    at /home/nick/ao/ao/src/eval/eval_array.cpp:238
#5  0x00007ffff75ca75b in Kernel::Tape::rwalk<Kernel::ArrayEvaluator> (this=0x7fffc80a8bc0, t=...)
    at /home/nick/ao/ao/src/../include/ao/eval/tape.hpp:125
#6  0x00007ffff75c66e6 in Kernel::ArrayEvaluator::values (this=0x7fffc80967a0, _count=48) at /home/nick/ao/ao/src/eval/eval_array.cpp:94
#7  0x00007ffff765bfd3 in Kernel::XTree<3u>::XTree (this=0x7fff9400b420, eval=0x7fffc8096780, region=..., min_feature=0.20000000298023224, 
    max_err=1e-08, multithread=false, cancel=...) at /home/nick/ao/ao/src/render/brep/xtree.cpp:394
#8  0x00007ffff765ad14 in Kernel::XTree<3u>::XTree (this=0x7fff9400a9c0, eval=0x7fffc8096780, region=..., min_feature=0.20000000298023224, 
    max_err=1e-08, multithread=false, cancel=...) at /home/nick/ao/ao/src/render/brep/xtree.cpp:167
#9  0x00007ffff765ad14 in Kernel::XTree<3u>::XTree (this=0x7fff94002bc0, eval=0x7fffc8096780, region=..., min_feature=0.20000000298023224, 
    max_err=1e-08, multithread=false, cancel=...) at /home/nick/ao/ao/src/render/brep/xtree.cpp:167
#10 0x00007ffff765ad14 in Kernel::XTree<3u>::XTree (this=0x7fff940029c0, eval=0x7fffc8096780, region=..., min_feature=0.20000000298023224, 
    max_err=1e-08, multithread=false, cancel=...) at /home/nick/ao/ao/src/render/brep/xtree.cpp:167
#11 0x00007ffff765ad14 in Kernel::XTree<3u>::XTree (this=0x7fff94001320, eval=0x7fffc8096780, region=..., min_feature=0.20000000298023224, 
    max_err=1e-08, multithread=false, cancel=...) at /home/nick/ao/ao/src/render/brep/xtree.cpp:167
#12 0x00007ffff765ad14 in Kernel::XTree<3u>::XTree (this=0x7fff94001e60, eval=0x7fffc8096780, region=..., min_feature=0.20000000298023224, 
    max_err=1e-08, multithread=false, cancel=...) at /home/nick/ao/ao/src/render/brep/xtree.cpp:167
#13 0x00007ffff765ad14 in Kernel::XTree<3u>::XTree (this=0x7fff940030e0, eval=0x7fffc8096780, region=..., min_feature=0.20000000298023224, 
    max_err=1e-08, multithread=false, cancel=...) at /home/nick/ao/ao/src/render/brep/xtree.cpp:167
#14 0x00007ffff765e654 in Kernel::XTree<3u>::XTree(Kernel::XTreeEvaluator*, Kernel::Region<3u>, double, double, bool, std::atomic<bool>&)::{lambda()#1}::operator()() const (__closure=0x7fffb8002888) at /home/nick/ao/ao/src/render/brep/xtree.cpp:152
#15 0x00007ffff771f3c8 in std::_Bind_simple<Kernel::XTree<3u>::XTree(Kernel::XTreeEvaluator*, Kernel::Region<3u>, double, double, bool, std::atomic<bool>&)::{lambda()#1} ()>::_M_invoke<>(std::_Index_tuple<>) (this=0x7fffb8002888) at /usr/include/c++/6/functional:1391
#16 0x00007ffff77184cd in std::_Bind_simple<Kernel::XTree<3u>::XTree(Kernel::XTreeEvaluator*, Kernel::Region<3u>, double, double, bool, std::atomic<bool>&)::{lambda()#1} ()>::operator()() (this=0x7fffb8002888) at /usr/include/c++/6/functional:1380
#17 0x00007ffff77072db in std::__future_base::_Task_setter<std::unique_ptr<std::__future_base::_Result<Kernel::XTree<3u>*>, std::__future_base::_Result_base::_Deleter>, std::_Bind_simple<Kernel::XTree<3u>::_Bind_simple(Kernel::XTreeEvaluator*, Kernel::Region<3u>, double, double, bool, std::atomic<bool>&)::{lambda()#1} ()>, Kernel::XTree<3u>*>::operator()() const (this=0x7fffb37fddf0)
    at /usr/include/c++/6/future:1325
#18 0x00007ffff76fcdec in std::_Function_handler<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> (), std::__future_base::_Task_setter<std::unique_ptr<std::__future_base::_Result<Kernel::XTree<3u>*>, std::__future_base::_Result_base::_Deleter>, std::_Bind_simple<Kernel::XTree<3u>::_Bind_simple(Kernel::XTreeEvaluator*, Kernel::Region<3u>, double, double, bool, std::atomic<bool>&)::{lambda()#1} ()>, Kernel::XTree<3u>*> >::_M_invoke(std::_Any_data const&) (__functor=...) at /usr/include/c++/6/functional:1717
#19 0x00007ffff7635f3f in std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>::operator()() const (this=0x7fffb37fddf0) at /usr/include/c++/6/functional:2127
#20 0x00007ffff7634b57 in std::__future_base::_State_baseV2::_M_do_set(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*) (this=0x7fffb8002850, __f=0x7fffb37fddf0, __did_set=0x7fffb37fdd77)
    at /usr/include/c++/6/future:533
#21 0x00007ffff763cb3d in std::__invoke_impl<void, void (std::__future_base::_State_baseV2::*)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*), std::__future_base::_State_baseV2*, std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*>(std::__invoke_memfun_deref, void (std::__future_base::_State_baseV2::*&&)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*), std::__future_base::_State_baseV2*&&, std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*&&, bool*&&) (__f=<unknown type in /home/nick/ao/build/ao/src/libao-kernel.so, CU 0x581789, DIE 0x65a9f7>, 
    __t=<unknown type in /home/nick/ao/build/ao/src/libao-kernel.so, CU 0x581789, DIE 0x5a45ef>, 
    __args#0=<unknown type in /home/nick/ao/build/ao/src/libao-kernel.so, CU 0x581789, DIE 0x65aa03>, 
    __args#1=<unknown type in /home/nick/ao/build/ao/src/libao-kernel.so, CU 0x581789, DIE 0x65aa0f>) at /usr/include/c++/6/functional:227
#22 0x00007ffff7639600 in std::__invoke<void (std::__future_base::_State_baseV2::*)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*), std::__future_base::_State_baseV2*, std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*>(void (std::__future_base::_State_baseV2::*&&)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*), std::__future_base::_State_baseV2*&&, std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*&&, bool*&&) (
    __fn=<unknown type in /home/nick/ao/build/ao/src/libao-kernel.so, CU 0x581789, DIE 0x65a9f7>, 
    __args#0=<unknown type in /home/nick/ao/build/ao/src/libao-kernel.so, CU 0x581789, DIE 0x5a45ef>, 
    __args#1=<unknown type in /home/nick/ao/build/ao/src/libao-kernel.so, CU 0x581789, DIE 0x65aa03>, 
    __args#2=<unknown type in /home/nick/ao/build/ao/src/libao-kernel.so, CU 0x581789, DIE 0x65aa0f>) at /usr/include/c++/6/functional:251
#23 0x00007ffff7635c8e in void std::call_once<void (std::__future_base::_State_baseV2::*)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*), std::__future_base::_State_baseV2*, std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*>(std::once_flag&, void (std::__future_base::_State_baseV2::*&&)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*), std::__future_base::_State_baseV2*&&, std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*&&, bool*&&)::{lambda()#1}::operator()() const (__closure=0x7fffb37fdd00) at /usr/include/c++/6/mutex:602
#24 0x00007ffff7635cf9 in void std::call_once<void (std::__future_base::_State_baseV2::*)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*), std::__future_base::_State_baseV2*, std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*>(std::once_flag&, void (std::__future_base::_State_baseV2::*&&)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*), std::__future_base::_State_baseV2*&&, std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*&&, bool*&&)::{lambda()#2}::operator()() const (__closure=0x0) at /usr/include/c++/6/mutex:607
#25 0x00007ffff7635d0a in void std::call_once<void (std::__future_base::_State_baseV2::*)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*), std::__future_base::_State_baseV2*, std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*>(std::once_flag&, void (std::__future_base::_State_baseV2::*&&)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*), std::__future_base::_State_baseV2*&&, std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*&&, bool*&&)::{lambda()#2}::_FUN() () at /usr/include/c++/6/mutex:607
#26 0x00007ffff657f739 in __pthread_once_slow (once_control=0x7fffb8002868, init_routine=0x7ffff4ca3120 <__once_proxy>)
    at pthread_once.c:116
#27 0x00007ffff762fc24 in __gthread_once (__once=0x7fffb8002868, __func=0x7ffff4ca3120 <__once_proxy>)
    at /usr/include/x86_64-linux-gnu/c++/6/bits/gthr-default.h:699
#28 0x00007ffff7635db4 in std::call_once<void (std::__future_base::_State_baseV2::*)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*), std::__future_base::_State_baseV2*, std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*>(std::once_flag&, void (std::__future_base::_State_baseV2::*&&)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*), std::__future_base::_State_baseV2*&&, std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*&&, bool*&&) (__once=..., __f=<unknown type in /home/nick/ao/build/ao/src/libao-kernel.so, CU 0x581789, DIE 0x65a9f7>, 
    __args#0=<unknown type in /home/nick/ao/build/ao/src/libao-kernel.so, CU 0x581789, DIE 0x5a45ef>, 
    __args#1=<unknown type in /home/nick/ao/build/ao/src/libao-kernel.so, CU 0x581789, DIE 0x65aa03>, 
    __args#2=<unknown type in /home/nick/ao/build/ao/src/libao-kernel.so, CU 0x581789, DIE 0x65aa0f>) at /usr/include/c++/6/mutex:614
#29 0x00007ffff7634925 in std::__future_base::_State_baseV2::_M_set_result(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>, bool) (this=0x7fffb8002850, __res=..., __ignore_failure=false)
    at /usr/include/c++/6/future:393
#30 0x00007ffff76e8861 in std::__future_base::_Async_state_impl<std::_Bind_simple<Kernel::XTree<3u>::XTree(Kernel::XTreeEvaluator*, Kernel::Region<3u>, double, double, bool, std::atomic<bool>&)::{lambda()#1} ()>, Kernel::XTree<3u>*>::_Async_state_impl(Kernel::XTree<3u>::XTree(Kernel::XTreeEvaluator*, Kernel::Region<3u>, double, double, bool, std::atomic<bool>&)::{lambda()#1} (&&)())::{lambda()#1}::operator()() const
    (__closure=0x7fffb80028c8) at /usr/include/c++/6/future:1664
#31 0x00007ffff7768992 in std::_Bind_simple<std::__future_base::_Async_state_impl<std::_Bind_simple<Kernel::XTree<3u>::XTree(Kernel::XTreeEvaluator*, Kernel::Region<3u>, double, double, bool, std::atomic<bool>&)::{lambda()#1} ()>, Kernel::XTree<3u>*>::_Async_state_impl(Kernel::XTree<3u>::XTree(Kernel::XTreeEvaluator*, Kernel::Region<3u>, double, double, bool, std::atomic<bool>&)::{lambda()#1} (&&)())::{lambda()#1} ()>::_M_invoke<>(std::_Index_tuple<>) (this=0x7fffb80028c8) at /usr/include/c++/6/functional:1391
#32 0x00007ffff776880b in std::_Bind_simple<std::__future_base::_Async_state_impl<std::_Bind_simple<Kernel::XTree<3u>::XTree(Kernel::XTreeEvaluator*, Kernel::Region<3u>, double, double, bool, std::atomic<bool>&)::{lambda()#1} ()>, Kernel::XTree<3u>*>::_Async_state_impl(Kernel::XTree<3u>::XTree(Kernel::XTreeEvaluator*, Kernel::Region<3u>, double, double, bool, std::atomic<bool>&)::{lambda()#1} (&&)())::{lambda()#1} ()>::operator()() (this=0x7fffb80028c8) at /usr/include/c++/6/functional:1380
#33 0x00007ffff7767f1e in std::thread::_State_impl<std::_Bind_simple<std::__future_base::_Async_state_impl<std::_Bind_simple<Kernel::XTree<3u>::XTree(Kernel::XTreeEvaluator*, Kernel::Region<3u>, double, double, bool, std::atomic<bool>&)::{lambda()#1} ()>, Kernel::XTree<3u>*>::_Async_state_impl(Kernel::XTree<3u>::XTree(Kernel::XTreeEvaluator*, Kernel::Region<3u>, double, double, bool, std::atomic<bool>&)::{lambda()#1} (&&)())::{lambda()#1} ()> >::_M_run() (this=0x7fffb80028c0) at /usr/include/c++/6/thread:197
#34 0x00007ffff4ca3e6f in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#35 0x00007ffff6578494 in start_thread (arg=0x7fffb37fe700) at pthread_create.c:333
#36 0x00007ffff4418aff in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:97
@mkeeter
Copy link
Member

mkeeter commented Oct 23, 2017

Did this just start happening in that revision? If you go back to 9d57a23, does it still crash?

Does this only happen when rendering is still in progress when you quit?

This was to fix a crash that I was noticing where if you quit while a render task was still in progress, it would hold off on deleting the Shape until after the OpenGL context was destroyed, so it would crash when it tried to delete the buffers, etc.

@nickodell
Copy link
Contributor Author

9d57a2 still crashes, with both kinds of errors. I think it segfaults more.

@nickodell
Copy link
Contributor Author

nickodell commented Oct 23, 2017

There is definitely a connection between rendering and the crash. It crashed 5 out of 5 times when I interrupted the render, and 0 out of 5 when I didn't.

Opening and closing an empty file doesn't trigger it either.

@mkeeter
Copy link
Member

mkeeter commented Oct 23, 2017

Can you see if 48f58c5 helps?

@nickodell
Copy link
Contributor Author

Fix confirmed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants