octave-maintainers
[Top][All Lists]
Advanced

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

Random crashes after f6763ab98609


From: John W. Eaton
Subject: Random crashes after f6763ab98609
Date: Sun, 6 Feb 2011 17:43:44 -0500

On  6-Feb-2011, Rik wrote:

| 
| > I've attached what I see for ....
| > 
| >     graphics_toolkit fltk
| >     demo ("scatter", 3)
| >     quit
| 
| I don't get any crashes, but I also don't see anything on the graph.  Using
| the gnuplot backend I at least get some colored squares on the plot.

Same here.  When I run with valgrind, I don't see any messages until
the quit command:

  octave:3> quit
  ==11937== Invalid read of size 8
  ==11937==    at 0x8D217CF: Fl_Group::clear() (in /usr/lib/libfltk.so.1.1)
  ==11937==    by 0x8D21A1A: Fl_Group::~Fl_Group() (in /usr/lib/libfltk.so.1.1)
  ==11937==    by 0x1381F411: plot_window::~plot_window() (__init_fltk__.cc:757)
  ==11937==    by 0x13824D02: fltk_graphics_toolkit::finalize(graphics_object 
const&) (__init_fltk__.cc:1572)
  ==11937==    by 0x54A5475: graphics_toolkit::finalize(graphics_object const&) 
(graphics.h:1945)
  ==11937==    by 0x539BCFA: gh_manager::do_free(graphics_handle const&) 
(graphics.cc:1878)
  ==11937==    by 0x54CAB7A: gh_manager::free(graphics_handle const&) 
(graphics.h:10177)
  ==11937==    by 0x549A1E1: F__go_delete__(octave_value_list const&, int) 
(graphics.cc:7194)
  ==11937==    by 0x569F360: octave_builtin::do_multi_index_op(int, 
octave_value_list const&, std::list<octave_lvalue, 
std::allocator<octave_lvalue> > const*) (ov-builtin.cc:128)
  ==11937==    by 0x569F034: octave_builtin::subsref(std::string const&, 
std::list<octave_value_list, std::allocator<octave_value_list> > const&, int, 
std::list<octave_lvalue, std::allocator<octave_lvalue> > const*) 
(ov-builtin.cc:63)
  ==11937==    by 0x569EF20: octave_builtin::subsref(std::string const&, 
std::list<octave_value_list, std::allocator<octave_value_list> > const&, int) 
(ov-builtin.cc:46)
  ==11937==    by 0x5743DED: octave_value::subsref(std::string const&, 
std::list<octave_value_list, std::allocator<octave_value_list> > const&, int) 
(ov.cc:1201)
  ==11937==  Address 0xfef5548 is 8 bytes inside a block of size 128 free'd
  ==11937==    at 0x4C23E0F: operator delete(void*) (vg_replace_malloc.c:387)
  ==11937==    by 0x1381F3F5: plot_window::~plot_window() (__init_fltk__.cc:614)
  ==11937==    by 0x13824D02: fltk_graphics_toolkit::finalize(graphics_object 
const&) (__init_fltk__.cc:1572)
  ==11937==    by 0x54A5475: graphics_toolkit::finalize(graphics_object const&) 
(graphics.h:1945)
  ==11937==    by 0x539BCFA: gh_manager::do_free(graphics_handle const&) 
(graphics.cc:1878)
  ==11937==    by 0x54CAB7A: gh_manager::free(graphics_handle const&) 
(graphics.h:10177)
  ==11937==    by 0x549A1E1: F__go_delete__(octave_value_list const&, int) 
(graphics.cc:7194)
  ==11937==    by 0x569F360: octave_builtin::do_multi_index_op(int, 
octave_value_list const&, std::list<octave_lvalue, 
std::allocator<octave_lvalue> > const*) (ov-builtin.cc:128)
  ==11937==    by 0x569F034: octave_builtin::subsref(std::string const&, 
std::list<octave_value_list, std::allocator<octave_value_list> > const&, int, 
std::list<octave_lvalue, std::allocator<octave_lvalue> > const*) 
(ov-builtin.cc:63)
  ==11937==    by 0x569EF20: octave_builtin::subsref(std::string const&, 
std::list<octave_value_list, std::allocator<octave_value_list> > const&, int) 
(ov-builtin.cc:46)
  ==11937==    by 0x5743DED: octave_value::subsref(std::string const&, 
std::list<octave_value_list, std::allocator<octave_value_list> > const&, int) 
(ov.cc:1201)
  ==11937==    by 0x5743E7B: octave_value::subsref(std::string const&, 
std::list<octave_value_list, std::allocator<octave_value_list> > const&, int, 
std::list<octave_lvalue, std::allocator<octave_lvalue> > const*) (ov.cc:1212)
  ==11937== 

  ==11937== 
  ==11937== HEAP SUMMARY:
  ==11937==     in use at exit: 39,977,689 bytes in 14,063 blocks
  ==11937==   total heap usage: 730,705 allocs, 716,642 frees, 109,202,713 
bytes allocated
  ==11937== 
  ==11937== LEAK SUMMARY:
  ==11937==    definitely lost: 8,141 bytes in 185 blocks
  ==11937==    indirectly lost: 101,213 bytes in 452 blocks
  ==11937==      possibly lost: 1,469,084 bytes in 7,240 blocks
  ==11937==    still reachable: 38,399,251 bytes in 6,186 blocks
  ==11937==         suppressed: 0 bytes in 0 blocks
  ==11937== Rerun with --leak-check=full to see details of leaked memory
  ==11937== 
  ==11937== For counts of detected and suppressed errors, rerun with: -v
  ==11937== ERROR SUMMARY: 3 errors from 1 contexts (suppressed: 22 from 7)

so something is not quite right.

If I just do

  graphics_toolkit fltk
  quit

there are no messages from valgrind (other than the summary at the
end) so apparently the problems depend on actually creating a plot,
not just setting up the fltk toolkit.

jwe


reply via email to

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