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

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

[Octave-bug-tracker] [bug #58956] Empty plot for certain xlim / ylim set


From: Hg200
Subject: [Octave-bug-tracker] [bug #58956] Empty plot for certain xlim / ylim settings
Date: Mon, 24 Aug 2020 13:09:53 -0400 (EDT)
User-agent: Mozilla/5.0 (X11; Fedora; Linux x86_64; rv:78.0) Gecko/20100101 Firefox/78.0

Follow-up Comment #7, bug #58956 (project octave):

Thank you for your response. Regarding the segfault: I have made following
changes to hg id f0414ee0fefe and made a fresh new build.

++
    //xZ1 = std::max (-1e6, x_zlim(0)-(x_zlim(1)-x_zlim(0))*100.0);
    //xZ2 = std::min (1e6, x_zlim(1)+(x_zlim(1)-x_zlim(0))*100.0);
    xZ1 = x_zlim(0)-(x_zlim(1)-x_zlim(0))/2;
    xZ2 = x_zlim(1)+(x_zlim(1)-x_zlim(0))/2;
--

The demo code that forces the segfault is attached to this report (run
"three_body_planar.m" and wait about a minute). Forgive me, it's not a minimum
working example, but it should be not to hard to read. Please notice that
there are OpenGL error messages in the backtrace. I admit that the conclusion
that the segfault is precisely caused by a poorly shaped projection matrix is
​​debatable. Could be also a problem how the OpenGl error is managed. But
those OpenGl erros occur especially for large x,y settings at the same time we
set the axis to equal.

For the other points mentioned in comment #6 i will respond later ;-)

++
Thread 1 "lt-octave-gui" received signal SIGSEGV, Segmentation fault.
0x00007fe790c82850 in vtable for charNDArray () from
/home/.../libbgui/.libs/liboctgui.so.6
(gdb) bt
#0  0x00007fe790c82850 in vtable for charNDArray () at
/home/.../libgui/.libs/liboctgui.so.6
#1  0x00007fe79094b1e8 in
std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release()
(this=0x7fe76493d690) at /usr/include/c++/9/bits/shared_ptr_base.h:155
#2  0x00007fe79094acd7 in
std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count()
(this=0x7ffe7cf5a5e8, __in_chrg=<optimized out>) at
/usr/include/c++/9/bits/shared_ptr_base.h:730
#3  0x00007fe78fc75e8e in std::__shared_ptr<octave::stack_frame,
(__gnu_cxx::_Lock_policy)2>::~__shared_ptr() (this=0x7ffe7cf5a5e0,
__in_chrg=<optimized out>) at /usr/include/c++/9/bits/shared_ptr_base.h:1169
#4  0x00007fe78feab8e7 in std::__shared_ptr<octave::stack_frame,
(__gnu_cxx::_Lock_policy)2>::operator=(std::__shared_ptr<octave::stack_frame,
(__gnu_cxx::_Lock_policy)2>&&) (this=0x7ffe7cf5a640, __r=...) at
/usr/include/c++/9/bits/shared_ptr_base.h:1265
#5  0x00007fe78feaae92 in
std::shared_ptr<octave::stack_frame>::operator=(std::shared_ptr<octave::stack_frame>&&)
(this=0x7ffe7cf5a640, __r=...) at /usr/include/c++/9/bits/shared_ptr.h:335
#6  0x00007fe78fea6cf5 in octave::call_stack::find_current_user_frame() const
(this=0x7fe764004148) at libinterp/corefcn/call-stack.cc:488
#7  0x00007fe78fea71ad in
octave::call_stack::backtrace_frames[abi:cxx11](long&) const
(this=0x7fe764004148, curr_user_frame=@0x7ffe7cf5a818: -1) at
libinterp/corefcn/call-stack.cc:636
#8  0x00007fe78fea7399 in octave::call_stack::backtrace_info[abi:cxx11](long&,
bool) const (this=0x7fe764004148, curr_user_frame=@0x7ffe7cf5a818: -1,
print_subfn=true) at libinterp/corefcn/call-stack.cc:673
#9  0x00007fe78fea7617 in octave::call_stack::backtrace_info[abi:cxx11]()
const (this=0x7fe764004148) at libinterp/corefcn/call-stack.cc:695
#10 0x00007fe78fdf9cf8 in octave::tree_evaluator::backtrace_info[abi:cxx11]()
const (this=0x7fe764004030) at libinterp/parse-tree/pt-eval.cc:2061
#11 0x00007fe78fdf9dcc in
octave::tree_evaluator::backtrace_message[abi:cxx11]() const
(this=0x7fe764004030) at libinterp/parse-tree/pt-eval.cc:2083
#12 0x00007fe78ff49c87 in octave::error_system::vwarning(char const*, char
const*, char const*, __va_list_tag*) (this=0x7fe7640033a8, name=0x7fe7903b8a6a
"warning", id=0x7fe7903b8a54 "", fmt=0x7fe7903bc588 "opengl_renderer: Error
'%s' (%d) occurred drawing '%s' object", args=0x7ffe7cf5ade8)
    at libinterp/corefcn/error.cc:558
#13 0x00007fe78ff4a31c in octave::error_system::vwarning(char const*, char
const*, __va_list_tag*) (this=0x7fe7640033a8, id=0x7fe7903b8a54 "",
fmt=0x7fe7903bc588 "opengl_renderer: Error '%s' (%d) occurred drawing '%s'
object", args=0x7ffe7cf5ade8) at libinterp/corefcn/error.cc:613
#14 0x00007fe78ff47a7e in vwarning(const char *, const char *, typedef
__va_list_tag __va_list_tag *) (id=0x7fe7903b8a54 "", fmt=0x7fe7903bc588
"opengl_renderer: Error '%s' (%d) occurred drawing '%s' object",
args=0x7ffe7cf5ade8) at libinterp/corefcn/error.cc:115
#15 0x00007fe78ff4d81e in vwarning(char const*, __va_list_tag*)
(fmt=0x7fe7903bc588 "opengl_renderer: Error '%s' (%d) occurred drawing '%s'
object", args=0x7ffe7cf5ade8) at libinterp/corefcn/error.cc:1069
#16 0x00007fe78ff4d8c0 in warning(char const*, ...) (fmt=0x7fe7903bc588
"opengl_renderer: Error '%s' (%d) occurred drawing '%s' object") at
libinterp/corefcn/error.cc:1077
#17 0x00007fe78ff9ad2d in octave::opengl_renderer::draw(graphics_object
const&, bool) (this=0x16d1210, go=..., toplevel=true) at
libinterp/corefcn/gl-render.cc:772
#18 0x00007fe78ffa5483 in
octave::opengl_renderer::draw_axes_children(axes::properties const&)
(this=0x16d1210, props=...) at libinterp/corefcn/gl-render.cc:2258
#19 0x00007fe78ffa5c97 in octave::opengl_renderer::draw_axes(axes::properties
const&) (this=0x16d1210, props=...) at libinterp/corefcn/gl-render.cc:2346
#20 0x00007fe78ff9a0d0 in octave::opengl_renderer::draw(graphics_object
const&, bool) (this=0x16d1210, go=..., toplevel=false) at
libinterp/corefcn/gl-render.cc:730
#21 0x00007fe78ffb5010 in octave::opengl_renderer::draw(Matrix const&, bool)
(this=0x16d1210, hlist=..., toplevel=false) at
libinterp/corefcn/gl-render.cc:4082
#22 0x00007fe78ff9b3a3 in
octave::opengl_renderer::draw_figure(figure::properties const&)
(this=0x16d1210, props=...) at libinterp/corefcn/gl-render.cc:797
#23 0x00007fe78ff9a019 in octave::opengl_renderer::draw(graphics_object
const&, bool) (this=0x16d1210, go=..., toplevel=true) at
libinterp/corefcn/gl-render.cc:728
#24 0x00007fe79096af59 in QtHandles::GLCanvas::draw(octave_handle const&)
(this=0x16d1180, gh=...) at libgui/graphics/GLCanvas.cc:87
#25 0x00007fe790954779 in QtHandles::Canvas::canvasPaintEvent()
(this=0x16d11b0) at libgui/graphics/Canvas.cc:284
#26 0x00007fe79096c2a2 in QtHandles::GLCanvas::paintGL() (this=0x16d1180) at
libgui/graphics/GLCanvas.cc:241
#27 0x00007fe78e3ce835 in QOpenGLWidgetPrivate::invokeUserPaint()
(this=0x13ad020) at
../../include/QtGui/../../src/gui/kernel/qopenglcontext.h:152
#2
--







(file #49702)
    _______________________________________________________

Additional Item Attachment:

File name: three_body_planar.m            Size:2 KB
    <https://file.savannah.gnu.org/file/three_body_planar.m?file_id=49702>



    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/bugs/?58956>

_______________________________________________
  Message sent via Savannah
  https://savannah.gnu.org/




reply via email to

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