[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Octave-bug-tracker] [bug #62207] segfault in bug-35881/bug-35881.tst in
From: |
Dmitri A. Sergatskov |
Subject: |
[Octave-bug-tracker] [bug #62207] segfault in bug-35881/bug-35881.tst in 32-bit ARM and MIPS |
Date: |
Sun, 3 Apr 2022 20:54:28 -0400 (EDT) |
Follow-up Comment #54, bug #62207 (project octave):
I also compiled aarch64 version with ASAN.
test gui/uicontrol.m crashes there as well:
octave:1> test gui/uicontrol.m
=================================================================
==985255==ERROR: AddressSanitizer: heap-buffer-overflow on address
0xffff512fae60 at pc 0xffff8b63c158 bp 0xffffe40ed010 sp 0xffffe40ed020
WRITE of size 8 at 0xffff512fae60 thread T0
#0 0xffff8b63c154 in convert_position
../libinterp/corefcn/graphics.cc:833
#1 0xffff8b930578 in octave::uicontrol::properties::get_extent() const
../libinterp/corefcn/graphics.cc:11042
#2 0xffff8b83b480 in octave::uicontrol::properties::get(bool) const
libinterp/corefcn/graphics-props.cc:7252
#3 0xffff8b98054c in octave::base_graphics_object::get(bool) const
libinterp/corefcn/graphics.h:2751
#4 0xffff8b66e4e8 in octave::base_graphics_object::remove_all_listeners()
../libinterp/corefcn/graphics.cc:3758
#5 0xffff8b9848f4 in octave::graphics_object::remove_all_listeners()
libinterp/corefcn/graphics.h:3153
#6 0xffff8b662b50 in octave::gh_manager::free(octave_handle const&, bool)
../libinterp/corefcn/graphics.cc:2917
#7 0xffff8b651f3c in octave::children_property::do_delete_children(bool,
bool) ../libinterp/corefcn/graphics.cc:1903
#8 0xffff8b97bcc4 in octave::children_property::delete_children(bool,
bool) libinterp/corefcn/graphics.h:1781
#9 0xffff8b97ea90 in octave::base_properties::delete_children(bool, bool)
libinterp/corefcn/graphics.h:2351
#10 0xffff8b662bb4 in octave::gh_manager::free(octave_handle const&, bool)
../libinterp/corefcn/graphics.cc:2919
#11 0xffff8b664770 in delete_graphics_object
../libinterp/corefcn/graphics.cc:3085
#12 0xffff8b664b70 in delete_graphics_object
../libinterp/corefcn/graphics.cc:3097
#13 0xffff8b664d8c in delete_graphics_objects
../libinterp/corefcn/graphics.cc:3110
#14 0xffff8b95f378 in octave::F__go_delete__(octave::interpreter&,
octave_value_list const&, int) ../libinterp/corefcn/graphics.cc:13663
#15 0xffff8ad44bd8 in octave_builtin::execute(octave::tree_evaluator&,
int, octave_value_list const&) ../libinterp/octave-value/ov-builtin.cc:65
#16 0xffff8ae36c00 in octave_function::call(octave::tree_evaluator&, int,
octave_value_list const&) ../libinterp/octave-value/ov-fcn.cc:57
#17 0xffff8b1ebd3c in
octave::tree_index_expression::evaluate_n(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.cc:408
#18 0xffff8b1f13c0 in
octave::tree_index_expression::evaluate(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.h:108
#19 0xffff8b19e3dc in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3781
#20 0xffff8b20a3f8 in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:124
#21 0xffff8b19ef00 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:3866
#22 0xffff8ac79ce0 in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:201
#23 0xffff8b19d694 in
octave::tree_evaluator::visit_if_command_list(octave::tree_if_command_list&)
../libinterp/parse-tree/pt-eval.cc:3629
#24 0xffff8b1b582c in
octave::tree_if_command_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-select.h:118
#25 0xffff8b19d2c0 in
octave::tree_evaluator::visit_if_command(octave::tree_if_command&)
../libinterp/parse-tree/pt-eval.cc:3607
#26 0xffff8b206f54 in
octave::tree_if_command::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-select.h:151
#27 0xffff8b19e190 in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3756
#28 0xffff8b20a3f8 in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:124
#29 0xffff8b19ef00 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:3866
#30 0xffff8ac79ce0 in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:201
#31 0xffff8b19c374 in
octave::tree_evaluator::execute_user_function(octave_user_function&, int,
octave_value_list const&) ../libinterp/parse-tree/pt-eval.cc:3512
#32 0xffff8af478a4 in
octave_user_function::execute(octave::tree_evaluator&, int, octave_value_list
const&) ../libinterp/octave-value/ov-usr-fcn.cc:495
#33 0xffff8af476fc in octave_user_function::call(octave::tree_evaluator&,
int, octave_value_list const&) ../libinterp/octave-value/ov-usr-fcn.cc:488
#34 0xffff8b1ebd3c in
octave::tree_index_expression::evaluate_n(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.cc:408
#35 0xffff8b1f13c0 in
octave::tree_index_expression::evaluate(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.h:108
#36 0xffff8b19e3dc in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3781
#37 0xffff8b20a3f8 in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:124
#38 0xffff8b19ef00 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:3866
#39 0xffff8ac79ce0 in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:201
#40 0xffff8b19d694 in
octave::tree_evaluator::visit_if_command_list(octave::tree_if_command_list&)
../libinterp/parse-tree/pt-eval.cc:3629
#41 0xffff8b1b582c in
octave::tree_if_command_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-select.h:118
#42 0xffff8b19d2c0 in
octave::tree_evaluator::visit_if_command(octave::tree_if_command&)
../libinterp/parse-tree/pt-eval.cc:3607
#43 0xffff8b206f54 in
octave::tree_if_command::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-select.h:151
#44 0xffff8b19e190 in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3756
#45 0xffff8b20a3f8 in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:124
#46 0xffff8b19ef00 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:3866
#47 0xffff8ac79ce0 in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:201
#48 0xffff8b19c374 in
octave::tree_evaluator::execute_user_function(octave_user_function&, int,
octave_value_list const&) ../libinterp/parse-tree/pt-eval.cc:3512
#49 0xffff8af478a4 in
octave_user_function::execute(octave::tree_evaluator&, int, octave_value_list
const&) ../libinterp/octave-value/ov-usr-fcn.cc:495
#50 0xffff8af476fc in octave_user_function::call(octave::tree_evaluator&,
int, octave_value_list const&) ../libinterp/octave-value/ov-usr-fcn.cc:488
#51 0xffff8b1e4dec in
octave::tree_identifier::evaluate_n(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-id.cc:130
#52 0xffff8b18737c in
octave::tree_evaluator::eval_string(std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&, bool, int&, int)
../libinterp/parse-tree/pt-eval.cc:1052
#53 0xffff8ba76da4 in
octave::interpreter::eval_string(std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&, bool, int&, int)
../libinterp/corefcn/interpreter.cc:1483
#54 0xffff8b94b4a0 in octave::gh_manager::execute_callback(octave_handle
const&, octave_value const&, octave_value const&)
../libinterp/corefcn/graphics.cc:12332
#55 0xffff8b9dc444 in octave::gh_manager::execute_callback(octave_handle
const&, std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > const&, octave_value const&)
libinterp/corefcn/graphics.h:14370
#56 0xffff8b9601a4 in
octave::F__go_execute_callback__(octave::interpreter&, octave_value_list
const&, int) ../libinterp/corefcn/graphics.cc:13732
#57 0xffff8ad44bd8 in octave_builtin::execute(octave::tree_evaluator&,
int, octave_value_list const&) ../libinterp/octave-value/ov-builtin.cc:65
#58 0xffff8ae36c00 in octave_function::call(octave::tree_evaluator&, int,
octave_value_list const&) ../libinterp/octave-value/ov-fcn.cc:57
#59 0xffff8b1ebd3c in
octave::tree_index_expression::evaluate_n(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.cc:408
#60 0xffff8b1f13c0 in
octave::tree_index_expression::evaluate(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.h:108
#61 0xffff8b19e3dc in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3781
#62 0xffff8b20a3f8 in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:124
#63 0xffff8b19ef00 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:3866
#64 0xffff8ac79ce0 in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:201
#65 0xffff8b198ffc in
octave::tree_evaluator::visit_simple_for_command(octave::tree_simple_for_command&)
../libinterp/parse-tree/pt-eval.cc:3166
#66 0xffff8b1f9b04 in
octave::tree_simple_for_command::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-loop.h:191
#67 0xffff8b19e190 in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3756
#68 0xffff8b20a3f8 in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:124
#69 0xffff8b19ef00 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:3866
#70 0xffff8ac79ce0 in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:201
#71 0xffff8b19c374 in
octave::tree_evaluator::execute_user_function(octave_user_function&, int,
octave_value_list const&) ../libinterp/parse-tree/pt-eval.cc:3512
#72 0xffff8af478a4 in
octave_user_function::execute(octave::tree_evaluator&, int, octave_value_list
const&) ../libinterp/octave-value/ov-usr-fcn.cc:495
#73 0xffff8af476fc in octave_user_function::call(octave::tree_evaluator&,
int, octave_value_list const&) ../libinterp/octave-value/ov-usr-fcn.cc:488
#74 0xffff8b1ebd3c in
octave::tree_index_expression::evaluate_n(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.cc:408
#75 0xffff8b1f13c0 in
octave::tree_index_expression::evaluate(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.h:108
#76 0xffff8b19e3dc in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3781
#77 0xffff8b20a3f8 in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:124
#78 0xffff8b19ef00 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:3866
#79 0xffff8ac79ce0 in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:201
#80 0xffff8b1a0b90 in
octave::tree_evaluator::do_unwind_protect_cleanup_code(octave::tree_statement_list*)
../libinterp/parse-tree/pt-eval.cc:4054
#81 0xffff8b1a1104 in
octave::tree_evaluator::visit_unwind_protect_command(octave::tree_unwind_protect_command&)
../libinterp/parse-tree/pt-eval.cc:4157
#82 0xffff8b1d8f10 in
octave::tree_unwind_protect_command::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-except.h:151
#83 0xffff8b19e190 in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3756
#84 0xffff8b20a3f8 in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:124
#85 0xffff8b19ef00 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:3866
#86 0xffff8ac79ce0 in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:201
#87 0xffff8b19c374 in
octave::tree_evaluator::execute_user_function(octave_user_function&, int,
octave_value_list const&) ../libinterp/parse-tree/pt-eval.cc:3512
#88 0xffff8af478a4 in
octave_user_function::execute(octave::tree_evaluator&, int, octave_value_list
const&) ../libinterp/octave-value/ov-usr-fcn.cc:495
#89 0xffff8af476fc in octave_user_function::call(octave::tree_evaluator&,
int, octave_value_list const&) ../libinterp/octave-value/ov-usr-fcn.cc:488
#90 0xffff8b1ebd3c in
octave::tree_index_expression::evaluate_n(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.cc:408
#91 0xffff8b18737c in
octave::tree_evaluator::eval_string(std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&, bool, int&, int)
../libinterp/parse-tree/pt-eval.cc:1052
#92 0xffff8b187f60 in
octave::tree_evaluator::eval(std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&, int)
../libinterp/parse-tree/pt-eval.cc:1111
#93 0xffff8ba77070 in
octave::interpreter::eval(std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&, int)
../libinterp/corefcn/interpreter.cc:1502
#94 0xffff8b11dcc8 in octave::Feval(octave::interpreter&,
octave_value_list const&, int) ../libinterp/parse-tree/oct-parse.yy:6432
#95 0xffff8ad44bd8 in octave_builtin::execute(octave::tree_evaluator&,
int, octave_value_list const&) ../libinterp/octave-value/ov-builtin.cc:65
#96 0xffff8ae36c00 in octave_function::call(octave::tree_evaluator&, int,
octave_value_list const&) ../libinterp/octave-value/ov-fcn.cc:57
#97 0xffff8b1ebd3c in
octave::tree_index_expression::evaluate_n(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.cc:408
#98 0xffff8b1f13c0 in
octave::tree_index_expression::evaluate(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.h:108
#99 0xffff8b19e3dc in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3781
#100 0xffff8b20a3f8 in
octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:124
#101 0xffff8b19ef00 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:3866
#102 0xffff8ac79ce0 in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:201
#103 0xffff8b19fab0 in
octave::tree_evaluator::visit_try_catch_command(octave::tree_try_catch_command&)
../libinterp/parse-tree/pt-eval.cc:3981
#104 0xffff8b1d8e94 in
octave::tree_try_catch_command::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-except.h:84
#105 0xffff8b19e190 in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3756
#106 0xffff8b20a3f8 in
octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:124
#107 0xffff8b19ef00 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:3866
#108 0xffff8ac79ce0 in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:201
#109 0xffff8b19d694 in
octave::tree_evaluator::visit_if_command_list(octave::tree_if_command_list&)
../libinterp/parse-tree/pt-eval.cc:3629
#110 0xffff8b1b582c in
octave::tree_if_command_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-select.h:118
#111 0xffff8b19d2c0 in
octave::tree_evaluator::visit_if_command(octave::tree_if_command&)
../libinterp/parse-tree/pt-eval.cc:3607
#112 0xffff8b206f54 in
octave::tree_if_command::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-select.h:151
#113 0xffff8b19e190 in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3756
#114 0xffff8b20a3f8 in
octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:124
#115 0xffff8b19ef00 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:3866
#116 0xffff8ac79ce0 in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:201
#117 0xffff8b19d694 in
octave::tree_evaluator::visit_if_command_list(octave::tree_if_command_list&)
../libinterp/parse-tree/pt-eval.cc:3629
#118 0xffff8b1b582c in
octave::tree_if_command_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-select.h:118
#119 0xffff8b19d2c0 in
octave::tree_evaluator::visit_if_command(octave::tree_if_command&)
../libinterp/parse-tree/pt-eval.cc:3607
#120 0xffff8b206f54 in
octave::tree_if_command::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-select.h:151
#121 0xffff8b19e190 in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3756
#122 0xffff8b20a3f8 in
octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:124
#123 0xffff8b19ef00 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:3866
#124 0xffff8ac79ce0 in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:201
#125 0xffff8b1a10f8 in
octave::tree_evaluator::visit_unwind_protect_command(octave::tree_unwind_protect_command&)
../libinterp/parse-tree/pt-eval.cc:4126
#126 0xffff8b1d8f10 in
octave::tree_unwind_protect_command::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-except.h:151
#127 0xffff8b19e190 in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3756
#128 0xffff8b20a3f8 in
octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:124
#129 0xffff8b19ef00 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:3866
#130 0xffff8ac79ce0 in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:201
#131 0xffff8b198ffc in
octave::tree_evaluator::visit_simple_for_command(octave::tree_simple_for_command&)
../libinterp/parse-tree/pt-eval.cc:3166
#132 0xffff8b1f9b04 in
octave::tree_simple_for_command::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-loop.h:191
#133 0xffff8b19e190 in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3756
#134 0xffff8b20a3f8 in
octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:124
#135 0xffff8b19ef00 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:3866
#136 0xffff8ac79ce0 in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:201
#137 0xffff8b19c374 in
octave::tree_evaluator::execute_user_function(octave_user_function&, int,
octave_value_list const&) ../libinterp/parse-tree/pt-eval.cc:3512
#138 0xffff8af478a4 in
octave_user_function::execute(octave::tree_evaluator&, int, octave_value_list
const&) ../libinterp/octave-value/ov-usr-fcn.cc:495
#139 0xffff8af476fc in octave_user_function::call(octave::tree_evaluator&,
int, octave_value_list const&) ../libinterp/octave-value/ov-usr-fcn.cc:488
#140 0xffff8b1ebd3c in
octave::tree_index_expression::evaluate_n(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.cc:408
#141 0xffff8b1f13c0 in
octave::tree_index_expression::evaluate(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.h:108
#142 0xffff8b19e3dc in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3781
#143 0xffff8b20a3f8 in
octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:124
#144 0xffff8b19ef00 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:3866
#145 0xffff8ac79ce0 in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:201
#146 0xffff8b186cc0 in
octave::tree_evaluator::eval(std::shared_ptr<octave::tree_statement_list>&,
bool) ../libinterp/parse-tree/pt-eval.cc:984
#147 0xffff8b185a24 in octave::tree_evaluator::repl()
../libinterp/parse-tree/pt-eval.cc:803
#148 0xffff8ba75a48 in octave::interpreter::main_loop()
../libinterp/corefcn/interpreter.cc:1340
#149 0xffff8ba68540 in octave::interpreter::execute()
../libinterp/corefcn/interpreter.cc:908
#150 0xffff8a22706c in octave::cli_application::execute()
../libinterp/octave.cc:425
#151 0xaaaadad33b44 in main ../src/main-cli.cc:121
#152 0xffff87064238 in __libc_start_call_main
../sysdeps/nptl/libc_start_call_main.h:58
#153 0xffff87064304 in __libc_start_main_impl ../csu/libc-start.c:409
#154 0xaaaadad3342c in _start
(/home/uu1/src/octave/gcc_asan/src/.libs/octave-cli+0x1342c)
0xffff512fae60 is located 15 bytes to the right of 1-byte region
[0xffff512fae50,0xffff512fae51)
allocated by thread T0 here:
#0 0xffff8c221b7c in operator new(unsigned long)
../../../../src/libsanitizer/asan/asan_new_delete.cpp:99
#1 0xffff8a2d9a9c in __gnu_cxx::new_allocator<double>::allocate(unsigned
long, void const*) /usr/include/c++/11/ext/new_allocator.h:127
#2 0xffff8a2d9860 in std::allocator_traits<std::allocator<double>
>::allocate(std::allocator<double>&, unsigned long)
/usr/include/c++/11/bits/alloc_traits.h:460
#3 0xffff8a2d97d0 in Array<double, std::allocator<double>
>::ArrayRep::allocate(unsigned long) ../liboctave/array/Array.h:197
#4 0xffff8a2d9b80 in Array<double, std::allocator<double>
>::ArrayRep::ArrayRep(double*, long) ../liboctave/array/Array.h:147
#5 0xffff8a4582b8 in Array<double, std::allocator<double> >::make_unique()
../liboctave/array/Array.h:219
#6 0xffff8a45521c in Array<double, std::allocator<double> >::elem(long)
../liboctave/array/Array.h:536
#7 0xffff8a44ca84 in Array<double, std::allocator<double>
>::operator()(long) ../liboctave/array/Array.h:548
#8 0xffff8b63c130 in convert_position
../libinterp/corefcn/graphics.cc:833
#9 0xffff8b930578 in octave::uicontrol::properties::get_extent() const
../libinterp/corefcn/graphics.cc:11042
#10 0xffff8b83b480 in octave::uicontrol::properties::get(bool) const
libinterp/corefcn/graphics-props.cc:7252
#11 0xffff8b98054c in octave::base_graphics_object::get(bool) const
libinterp/corefcn/graphics.h:2751
#12 0xffff8b66e4e8 in octave::base_graphics_object::remove_all_listeners()
../libinterp/corefcn/graphics.cc:3758
#13 0xffff8b9848f4 in octave::graphics_object::remove_all_listeners()
libinterp/corefcn/graphics.h:3153
#14 0xffff8b662b50 in octave::gh_manager::free(octave_handle const&, bool)
../libinterp/corefcn/graphics.cc:2917
#15 0xffff8b651f3c in octave::children_property::do_delete_children(bool,
bool) ../libinterp/corefcn/graphics.cc:1903
#16 0xffff8b97bcc4 in octave::children_property::delete_children(bool,
bool) libinterp/corefcn/graphics.h:1781
#17 0xffff8b97ea90 in octave::base_properties::delete_children(bool, bool)
libinterp/corefcn/graphics.h:2351
#18 0xffff8b662bb4 in octave::gh_manager::free(octave_handle const&, bool)
../libinterp/corefcn/graphics.cc:2919
#19 0xffff8b664770 in delete_graphics_object
../libinterp/corefcn/graphics.cc:3085
#20 0xffff8b664b70 in delete_graphics_object
../libinterp/corefcn/graphics.cc:3097
#21 0xffff8b664d8c in delete_graphics_objects
../libinterp/corefcn/graphics.cc:3110
#22 0xffff8b95f378 in octave::F__go_delete__(octave::interpreter&,
octave_value_list const&, int) ../libinterp/corefcn/graphics.cc:13663
#23 0xffff8ad44bd8 in octave_builtin::execute(octave::tree_evaluator&,
int, octave_value_list const&) ../libinterp/octave-value/ov-builtin.cc:65
#24 0xffff8ae36c00 in octave_function::call(octave::tree_evaluator&, int,
octave_value_list const&) ../libinterp/octave-value/ov-fcn.cc:57
#25 0xffff8b1ebd3c in
octave::tree_index_expression::evaluate_n(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.cc:408
#26 0xffff8b1f13c0 in
octave::tree_index_expression::evaluate(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.h:108
#27 0xffff8b19e3dc in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3781
#28 0xffff8b20a3f8 in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:124
#29 0xffff8b19ef00 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:3866
SUMMARY: AddressSanitizer: heap-buffer-overflow
../libinterp/corefcn/graphics.cc:833 in convert_position
Shadow bytes around the buggy address:
0x200fea25f570: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
0x200fea25f580: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
0x200fea25f590: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
0x200fea25f5a0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
0x200fea25f5b0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
=>0x200fea25f5c0: fa fa fa fa fa fa fa fa fa fa 01 fa[fa]fa 00 00
0x200fea25f5d0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
0x200fea25f5e0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
0x200fea25f5f0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
0x200fea25f600: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
0x200fea25f610: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
Shadow byte legend (one shadow byte represents 8 application bytes):
Addressable: 00
Partially addressable: 01 02 03 04 05 06 07
Heap left redzone: fa
Freed heap region: fd
Stack left redzone: f1
Stack mid redzone: f2
Stack right redzone: f3
Stack after return: f5
Stack use after scope: f8
Global redzone: f9
Global init order: f6
Poisoned by user: f7
Container overflow: fc
Array cookie: ac
Intra object redzone: bb
ASan internal: fe
Left alloca redzone: ca
Right alloca redzone: cb
Shadow gap: cc
==985255==ABORTING
_______________________________________________________
Reply to this item at:
<https://savannah.gnu.org/bugs/?62207>
_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/
- [Octave-bug-tracker] [bug #62207] segfault in bug-35881/bug-35881.tst in 32-bit ARM and MIPS, (continued)
- [Octave-bug-tracker] [bug #62207] segfault in bug-35881/bug-35881.tst in 32-bit ARM and MIPS, Dmitri A. Sergatskov, 2022/04/03
- [Octave-bug-tracker] [bug #62207] segfault in bug-35881/bug-35881.tst in 32-bit ARM and MIPS, Dmitri A. Sergatskov, 2022/04/03
- [Octave-bug-tracker] [bug #62207] segfault in bug-35881/bug-35881.tst in 32-bit ARM and MIPS, John W. Eaton, 2022/04/03
- [Octave-bug-tracker] [bug #62207] segfault in bug-35881/bug-35881.tst in 32-bit ARM and MIPS, Dmitri A. Sergatskov, 2022/04/03
- [Octave-bug-tracker] [bug #62207] segfault in bug-35881/bug-35881.tst in 32-bit ARM and MIPS, Dmitri A. Sergatskov, 2022/04/03
- [Octave-bug-tracker] [bug #62207] segfault in bug-35881/bug-35881.tst in 32-bit ARM and MIPS, Dmitri A. Sergatskov, 2022/04/03
- [Octave-bug-tracker] [bug #62207] segfault in bug-35881/bug-35881.tst in 32-bit ARM and MIPS, Arun Giridhar, 2022/04/03
- [Octave-bug-tracker] [bug #62207] segfault in bug-35881/bug-35881.tst in 32-bit ARM and MIPS, John W. Eaton, 2022/04/03
- [Octave-bug-tracker] [bug #62207] segfault in bug-35881/bug-35881.tst in 32-bit ARM and MIPS, Dmitri A. Sergatskov, 2022/04/03
- [Octave-bug-tracker] [bug #62207] segfault in bug-35881/bug-35881.tst in 32-bit ARM and MIPS, Dmitri A. Sergatskov, 2022/04/03
- [Octave-bug-tracker] [bug #62207] segfault in bug-35881/bug-35881.tst in 32-bit ARM and MIPS,
Dmitri A. Sergatskov <=
- [Octave-bug-tracker] [bug #62207] segfault in bug-35881/bug-35881.tst in 32-bit ARM and MIPS, John W. Eaton, 2022/04/03
- [Octave-bug-tracker] [bug #62207] segfault in bug-35881/bug-35881.tst in 32-bit ARM and MIPS, John W. Eaton, 2022/04/03
- [Octave-bug-tracker] [bug #62207] segfault in bug-35881/bug-35881.tst in 32-bit ARM and MIPS, Dmitri A. Sergatskov, 2022/04/03
- [Octave-bug-tracker] [bug #62207] segfault in bug-35881/bug-35881.tst in 32-bit ARM and MIPS, Dmitri A. Sergatskov, 2022/04/03
- [Octave-bug-tracker] [bug #62207] segfault in bug-35881/bug-35881.tst in 32-bit ARM and MIPS, John W. Eaton, 2022/04/04
- [Octave-bug-tracker] [bug #62207] segfault in bug-35881/bug-35881.tst in 32-bit ARM and MIPS, Markus Mützel, 2022/04/12