Disable container overflow detection in Mac STL ASAN CI build
This seems to result in a false positive in BitmapComboBoxTestCase with the following stack: ERROR: AddressSanitizer: container-overflow on address 0x00010d5331c0 at pc 0x00010743e1e8 bp 0x00016b6f8940 sp 0x00016b6f8938 WRITE of size 8 at 0x00010d5331c0 thread T0 #0 0x10743e1e4 in wxString::ConvertedBuffer<char>::ConvertedBuffer() string.h:3598 #1 0x10743ddbc in wxString::ConvertedBuffer<char>::ConvertedBuffer() string.h:3598 #2 0x10743f49c in wxString::wxString(wxString const&) string.h:1157 #3 0x1074324ac in wxString::wxString(wxString const&) string.h:1157 #4 0x10747a4c4 in void std::__1::allocator<wxString>::construct<wxString, wxString const&>(wxString*, wxString const&) memory:916 #5 0x10747a3f8 in void std::__1::allocator_traits<std::__1::allocator<wxString> >::construct<wxString, wxString const&, void>(std::__1::allocator<wxString>&, wxString*, wxString const&) allocator_traits.h:288 #6 0x107479e2c in std::__1::vector<wxString, std::__1::allocator<wxString> >::__construct_at_end(unsigned long, wxString const&) vector:1063 #7 0x107479b3c in std::__1::vector<wxString, std::__1::allocator<wxString> >::insert(std::__1::__wrap_iter<wxString const*>, unsigned long, wxString const&) vector:1889 #8 0x10756085c in wxBaseArray<wxString, wxSortedArray_SortFunction<wxString> >::Insert(wxString, unsigned long, unsigned long) dynarray.h:181 #9 0x108028fbc in wxVListBoxComboPopup::Insert(wxString const&, int) odcombo.cpp:539 #10 0x108030180 in wxOwnerDrawnComboBox::DoInsertItems(wxArrayStringsAdapter const&, unsigned int, void**, wxClientDataType) odcombo.cpp:1122 #11 0x10826d690 in wxBitmapComboBox::DoInsertItems(wxArrayStringsAdapter const&, unsigned int, void**, wxClientDataType) bmpcboxg.cpp:169 #12 0x10485271c in wxItemContainer::InsertItems(wxArrayStringsAdapter const&, unsigned int, void**, wxClientDataType) ctrlsub.h:160 #13 0x1048522a0 in wxItemContainer::InsertItems(wxArrayStringsAdapter const&, unsigned int) ctrlsub.h:165 #14 0x10483c08c in wxItemContainer::Insert(wxArrayString const&, unsigned int) ctrlsub.h:247 #15 0x10483dac8 in ItemContainerTestCase::Count() itemcontainertest.cpp:96 #16 0x104866e04 in BitmapComboBoxTestCase::runTest() bitmapcomboboxtest.cpp:50 ... 0x00010d5331c0 is located 64 bytes inside of 160-byte region [0x00010d533180,0x00010d533220) allocated by thread T0 here: #0 0x105546714 in wrap__Znwm+0x74 (libclang_rt.asan_osx_dynamic.dylib:arm64e+0x4a714) #1 0x10747ae10 in void* std::__1::__libcpp_operator_new<unsigned long>(unsigned long) new:235 #2 0x10747ad6c in std::__1::__libcpp_allocate(unsigned long, unsigned long) new:261 #3 0x10747ace8 in std::__1::allocator<wxString>::allocate(unsigned long) memory:870 #4 0x10747ab88 in std::__1::allocator_traits<std::__1::allocator<wxString> >::allocate(std::__1::allocator<wxString>&, unsigned long) allocator_traits.h:260 #5 0x10747aac4 in std::__1::__split_buffer<wxString, std::__1::allocator<wxString>&>::__split_buffer(unsigned long, unsigned long, std::__1::allocator<wxString>&) __split_buffer:314 #6 0x10747a110 in std::__1::__split_buffer<wxString, std::__1::allocator<wxString>&>::__split_buffer(unsigned long, unsigned long, std::__1::allocator<wxString>&) __split_buffer:313 #7 0x107479c30 in std::__1::vector<wxString, std::__1::allocator<wxString> >::insert(std::__1::__wrap_iter<wxString const*>, unsigned long, wxString const&) vector:1904 #8 0x10756085c in wxBaseArray<wxString, wxSortedArray_SortFunction<wxString> >::Insert(wxString, unsigned long, unsigned long) dynarray.h:181 #9 0x108028fbc in wxVListBoxComboPopup::Insert(wxString const&, int) odcombo.cpp:539 #10 0x108030180 in wxOwnerDrawnComboBox::DoInsertItems(wxArrayStringsAdapter const&, unsigned int, void**, wxClientDataType) odcombo.cpp:1122 #11 0x10826d690 in wxBitmapComboBox::DoInsertItems(wxArrayStringsAdapter const&, unsigned int, void**, wxClientDataType) bmpcboxg.cpp:169 #12 0x1075590bc in wxItemContainer::DoAppendItems(wxArrayStringsAdapter const&, void**, wxClientDataType) ctrlsub.h:352 #13 0x10484c9e0 in wxItemContainer::AppendItems(wxArrayStringsAdapter const&, void**, wxClientDataType) ctrlsub.h:117 #14 0x10484c8d4 in wxItemContainer::AppendItems(wxArrayStringsAdapter const&) ctrlsub.h:122 #15 0x10483999c in wxItemContainer::Append(wxArrayString const&) ctrlsub.h:209 #16 0x10483ccfc in ItemContainerTestCase::Count() itemcontainertest.cpp:82 #17 0x104866e04 in BitmapComboBoxTestCase::runTest() bitmapcomboboxtest.cpp:50 ...
This commit is contained in:
parent
168c6d3bd5
commit
11b8276cc4
6
.github/workflows/ci_mac.yml
vendored
6
.github/workflows/ci_mac.yml
vendored
@ -203,7 +203,11 @@ jobs:
|
||||
if: matrix.skip_testing != true
|
||||
working-directory: tests
|
||||
run: |
|
||||
export ASAN_OPTIONS=fast_unwind_on_malloc=0
|
||||
# We currently need to disable container overflow detection as we get
|
||||
# what seems to be a false positive in BitmapComboBoxTestCase triggered
|
||||
# by creating a new string from std::allocator<wxString>::construct()
|
||||
# used by std::vector<>::insert().
|
||||
export ASAN_OPTIONS='fast_unwind_on_malloc=0 detect_container_overflow=0'
|
||||
# Exclude tests that are currently known to fail
|
||||
wx_tests_selection='~[valnum] ~wxPersistTLW ~wxPersistDVC ~wxTopLevel::Show ~wxFont::Weight ~wxFont::NativeFontInfo ~WebView ~RadioButton::Single ~RadioButton::Focus ~wxHtmlPrintout::Pagination ~ChoiceTestCase ~ComboBoxTestCase ~CheckListBoxTestCase ~ListBoxTestCase ~RearrangeListTestCase ~wxTextCtrl::GetBestSize ~TextCtrlTestCase ~ClippingBoxTestCase::wxClientDC ~wxExecute::RedirectUTF8 ~Ellipsization::NormalCase ~SpinCtrl::* ~SpinCtrlDouble::* ~NotebookTestCase ~SettingsTestCase ~XRC::LoadURL ~Window::Show ~ModalDialogsTestCase ~Button::Click ~Button::Disabled ~wxDVC::GetItemRect ~wxDVC::AppendTextColumn ~Grid::KeyboardSelection ~Grid::CellClick ~Grid::ReorderedColumnsCellClick ~Grid::CellSelect ~wxStyledTextCtrl::AutoComp ~EvtLoopTestCase ~EventPropagationTestCase'
|
||||
./test_gui $wx_tests_selection
|
||||
|
Loading…
Reference in New Issue
Block a user