steinbergmedia / vst3sdk

VST 3 Plug-In SDK
Other
1.59k stars 162 forks source link

new-delete mismatch #27

Closed abique closed 5 years ago

abique commented 5 years ago
=================================================================
==31886==ERROR: AddressSanitizer: new-delete-type-mismatch on 0x6070000727f0 in thread T0:
  object passed to delete has wrong type:
  size of the allocated type:   72 bytes;
  size of the deallocated type: 48 bytes.
    #0 0x7f616246e421 in operator delete(void*, unsigned long) /build/gcc/src/gcc/libsanitizer/asan/asan_new_delete.cc:151
    #1 0x7f6160de10aa in Gtk::Container::foreach(sigc::slot<void, Gtk::Widget&, sigc::nil, sigc::nil, sigc::nil, sigc::nil, sigc::nil, sigc::nil> const&) (/usr/lib/libgtkmm-3.0.so.1+0x3300aa)
    #2 0x7f6160de1215 in Gtk::Container::show_all_children(bool) (/usr/lib/libgtkmm-3.0.so.1+0x330215)
    #3 0x5625a698061c in Steinberg::Vst::EditorHost::WindowGtk::WindowGtk() ../public.sdk/samples/vst-hosting/editorhost/source/platform/linux/window.cpp:84
    #4 0x5625a697f92d in Steinberg::Vst::EditorHost::X11Window::Impl::Impl(Steinberg::Vst::EditorHost::X11Window*) ../public.sdk/samples/vst-hosting/editorhost/source/platform/linux/window.cpp:344
    #5 0x5625a697f605 in Steinberg::Vst::EditorHost::X11Window::X11Window() ../public.sdk/samples/vst-hosting/editorhost/source/platform/linux/window.cpp:267
    #6 0x5625a69859fd in void __gnu_cxx::new_allocator<Steinberg::Vst::EditorHost::X11Window>::construct<Steinberg::Vst::EditorHost::X11Window>(Steinberg::Vst::EditorHost::X11Window*) /usr/include/c++/7.2.1/ext/new_allocator.h:136
    #7 0x5625a69855aa in void std::allocator_traits<std::allocator<Steinberg::Vst::EditorHost::X11Window> >::construct<Steinberg::Vst::EditorHost::X11Window>(std::allocator<Steinberg::Vst::EditorHost::X11Window>&, Steinberg::Vst::EditorHost::X11Window*) /usr/include/c++/7.2.1/bits/alloc_traits.h:475
    #8 0x5625a6984ddf in std::_Sp_counted_ptr_inplace<Steinberg::Vst::EditorHost::X11Window, std::allocator<Steinberg::Vst::EditorHost::X11Window>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<>(std::allocator<Steinberg::Vst::EditorHost::X11Window>) /usr/include/c++/7.2.1/bits/shared_ptr_base.h:526
    #9 0x5625a6983fee in std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<Steinberg::Vst::EditorHost::X11Window, std::allocator<Steinberg::Vst::EditorHost::X11Window>>(std::_Sp_make_shared_tag, Steinberg::Vst::EditorHost::X11Window*, std::allocator<Steinberg::Vst::EditorHost::X11Window> const&) /usr/include/c++/7.2.1/bits/shared_ptr_base.h:637
    #10 0x5625a6982e4b in std::__shared_ptr<Steinberg::Vst::EditorHost::X11Window, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<Steinberg::Vst::EditorHost::X11Window>>(std::_Sp_make_shared_tag, std::allocator<Steinberg::Vst::EditorHost::X11Window> const&) /usr/include/c++/7.2.1/bits/shared_ptr_base.h:1295
    #11 0x5625a6982383 in std::shared_ptr<Steinberg::Vst::EditorHost::X11Window>::shared_ptr<std::allocator<Steinberg::Vst::EditorHost::X11Window>>(std::_Sp_make_shared_tag, std::allocator<Steinberg::Vst::EditorHost::X11Window> const&) /usr/include/c++/7.2.1/bits/shared_ptr.h:344
    #12 0x5625a698198b in std::shared_ptr<Steinberg::Vst::EditorHost::X11Window> std::allocate_shared<Steinberg::Vst::EditorHost::X11Window, std::allocator<Steinberg::Vst::EditorHost::X11Window>>(std::allocator<Steinberg::Vst::EditorHost::X11Window> const&) /usr/include/c++/7.2.1/bits/shared_ptr.h:691
    #13 0x5625a69810e7 in std::shared_ptr<Steinberg::Vst::EditorHost::X11Window> std::make_shared<Steinberg::Vst::EditorHost::X11Window>() /usr/include/c++/7.2.1/bits/shared_ptr.h:707
    #14 0x5625a697f4f2 in Steinberg::Vst::EditorHost::X11Window::make(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, Steinberg::Vst::EditorHost::Size, bool, std::shared_ptr<Steinberg::Vst::EditorHost::IWindowController> const&, _XDisplay*, std::function<void (Steinberg::Vst::EditorHost::X11Window*)> const&) ../public.sdk/samples/vst-hosting/editorhost/source/platform/linux/window.cpp:256
    #15 0x5625a69733ca in Steinberg::Vst::EditorHost::Platform::createWindow(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, Steinberg::Vst::EditorHost::Size, bool, std::shared_ptr<Steinberg::Vst::EditorHost::IWindowController> const&) ../public.sdk/samples/vst-hosting/editorhost/source/platform/linux/platform.cpp:127
    #16 0x5625a695e029 in Steinberg::Vst::EditorHost::App::createViewAndShow(Steinberg::Vst::IEditController*) ../public.sdk/samples/vst-hosting/editorhost/source/editorhost.cpp:213
    #17 0x5625a695dc75 in Steinberg::Vst::EditorHost::App::openEditor(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, VST3::Optional<VST3::UID>, unsigned int) ../public.sdk/samples/vst-hosting/editorhost/source/editorhost.cpp:187
    #18 0x5625a695e496 in Steinberg::Vst::EditorHost::App::init(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&) ../public.sdk/samples/vst-hosting/editorhost/source/editorhost.cpp:262
    #19 0x5625a697373d in Steinberg::Vst::EditorHost::Platform::run(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&) ../public.sdk/samples/vst-hosting/editorhost/source/platform/linux/platform.cpp:185
    #20 0x5625a69739cc in main ../public.sdk/samples/vst-hosting/editorhost/source/platform/linux/platform.cpp:251
    #21 0x7f615fea5222 in __libc_start_main (/usr/lib/libc.so.6+0x24222)
    #22 0x5625a695cba9 in _start (/home/abique/develop/vst3sdk/build/bin/editorhost+0x1bba9)

0x6070000727f0 is located 0 bytes inside of 72-byte region [0x6070000727f0,0x607000072838)
allocated by thread T0 here:
    #0 0x7f616246cd29 in operator new(unsigned long) /build/gcc/src/gcc/libsanitizer/asan/asan_new_delete.cc:90
    #1 0x7f6160de20e1 in sigc::internal::typed_slot_rep<sigc::mem_functor0<void, Gtk::Widget> >::dup(void*) (/usr/lib/libgtkmm-3.0.so.1+0x3310e1)

SUMMARY: AddressSanitizer: new-delete-type-mismatch /build/gcc/src/gcc/libsanitizer/asan/asan_new_delete.cc:151 in operator delete(void*, unsigned long)
==31886==HINT: if you don't care about these errors you may set ASAN_OPTIONS=new_delete_type_mismatch=0
==31886==ABORTING
scheffle commented 5 years ago

I think this is a gtk or gtkmm issue, not ?