Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ThreadSanitizer(testRunner_v5.js, sci, exit): heap-use-after-free @rtWrapperUtils.cpp:309 in rtScriptNodeUtils::HandleMap::lookupSurrogate() #1259

Open
dwrobel opened this issue Jun 20, 2018 · 0 comments

Comments

@dwrobel
Copy link
Contributor

dwrobel commented Jun 20, 2018

Detected by: https://semaphoreci.com/dwrobel/pxcore/branches/onemw-wayland-egl-47/builds/53

Finishing exitTest now
==================
WARNING: ThreadSanitizer: heap-use-after-free (pid=8769)
  Read of size 8 at 0x7b0c0000bcc0 by main thread (mutexes: write M474):
    #0 std::_Rb_tree<rtIObject*, std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*>, std::_Select1st<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> >, std::less<rtIObject*>, std::allocator<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> > >::_M_lower_bound(std::_Rb_tree_node<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> >*, std::_Rb_tree_node_base*, rtIObject* const&) /usr/include/c++/8/bits/stl_tree.h:1888 (pxscene+0x551135)
    #1 std::_Rb_tree<rtIObject*, std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*>, std::_Select1st<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> >, std::less<rtIObject*>, std::allocator<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> > >::find(rtIObject* const&) /usr/include/c++/8/bits/stl_tree.h:2539 (pxscene+0x551135)
    #2 std::map<rtIObject*, rtScriptNodeUtils::ObjectReference*, std::less<rtIObject*>, std::allocator<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> > >::find(rtIObject* const&) /usr/include/c++/8/bits/stl_map.h:1170 (pxscene+0x550422)
    #3 rtScriptNodeUtils::HandleMap::lookupSurrogate(v8::Local<v8::Context>&, rtObjectRef const&) /home/runner/pxCore/src/rtScriptNode/rtWrapperUtils.cpp:309 (pxscene+0x550422)
    #4 rtScriptNodeUtils::rtObjectWrapper::createFromObjectReference(v8::Local<v8::Context>&, rtObjectRef const&) /home/runner/pxCore/src/rtScriptNode/rtObjectWrapper.cpp:115 (pxscene+0x54ba33)
    #5 rtScriptNodeUtils::rt2js(v8::Local<v8::Context>&, rtValue const&) /home/runner/pxCore/src/rtScriptNode/rtWrapperUtils.cpp:428 (pxscene+0x54f68a)
    #6 rtScriptNodeUtils::jsCallback::makeArgs(v8::Local<v8::Context>&) /home/runner/pxCore/src/rtScriptNode/jsCallback.cpp:78 (pxscene+0x566e60)
    #7 rtScriptNodeUtils::jsCallback::run() /home/runner/pxCore/src/rtScriptNode/jsCallback.cpp:114 (pxscene+0x567397)
    #8 rtScriptNodeUtils::jsFunctionWrapper::Send(int, rtValue const*, rtValue*) /home/runner/pxCore/src/rtScriptNode/rtFunctionWrapper.cpp:430 (pxscene+0x547e46)
    #9 rtEmit::Send(int, rtValue const*, rtValue*) /home/runner/pxCore/src/rtObject.cpp:150 (pxscene+0x573030)
    #10 rtEmitRef::Send(int, rtValue const*, rtValue*) /home/runner/pxCore/src/rtObject.cpp:212 (pxscene+0x5709f8)
    #11 rtFunctionBase::Send(int, rtValue const*) /home/runner/pxCore/src/rtObject.h:222 (pxscene+0x5723af)
    #12 rtFunctionBase::send(rtValue const&, rtValue const&) /home/runner/pxCore/src/rtObject.cpp:559 (pxscene+0x5723af)
    #13 pxScene2d::dispose() /home/runner/pxCore/examples/pxScene2d/src/pxScene2d.cpp:1947 (pxscene+0x4aa583)
    #14 pxScene2d::dispose_thunk(int, rtValue const*, rtValue&) /home/runner/pxCore/examples/pxScene2d/src/pxScene2d.h:1346 (pxscene+0x4d49bc)
    #15 rtObjectFunction::Send(int, rtValue const*, rtValue*) /home/runner/pxCore/src/rtObject.cpp:630 (pxscene+0x570eaa)
    #16 rtObjectBase::Send(char const*, int, rtValue const*) /home/runner/pxCore/src/rtObject.cpp:493 (pxscene+0x572b24)
    #17 rtObjectBase::send(char const*) /home/runner/pxCore/src/rtObject.cpp:509 (pxscene+0x571d5c)
    #18 pxScriptView::~pxScriptView() /home/runner/pxCore/examples/pxScene2d/src/pxScene2d.h:1098 (pxscene+0x4ca404)
    #19 pxScriptView::~pxScriptView() /home/runner/pxCore/examples/pxScene2d/src/pxScene2d.h:1102 (pxscene+0x4ca9ec)
    #20 pxScriptView::Release() /home/runner/pxCore/examples/pxScene2d/src/pxScene2d.h:1116 (pxscene+0x4ca9ec)
    #21 rtRef<pxIView>::asn(pxIView const*) /home/runner/pxCore/examples/pxScene2d/src/../../../src/rtRef.h:74 (pxscene+0x5032bd)
    #22 rtRef<pxIView>::operator=(pxIView const*) /home/runner/pxCore/examples/pxScene2d/src/../../../src/rtRef.h:58 (pxscene+0x5032bd)
    #23 sceneWindow::~sceneWindow() /home/runner/pxCore/examples/pxScene2d/src/pxScene.cpp:146 (pxscene+0x5032bd)
    #24 <null> <null> (libtsan.so.0+0x287b7)
    #25 rtScript::pump() /home/runner/pxCore/src/rtScript.cpp:221 (pxscene+0x52b9bc)
    #26 sceneWindow::onAnimationTimer() /home/runner/pxCore/examples/pxScene2d/src/pxScene.cpp:393 (pxscene+0x5031ff)
    #27 pxWindowNative::onAnimationTimerInternal() /home/runner/pxCore/src/wayland_egl/pxWindowNative.cpp:496 (pxscene+0x506654)
    #28 pxWindowNative::animateAndRender() /home/runner/pxCore/src/wayland_egl/pxWindowNative.cpp:863 (pxscene+0x507593)
    #29 pxWindowNative::runEventLoop() /home/runner/pxCore/src/wayland_egl/pxWindowNative.cpp:602 (pxscene+0x507a8f)
    #30 pxEventLoop::run() /home/runner/pxCore/src/wayland_egl/pxEventLoopNative.cpp:35 (pxscene+0x508c56)
    #31 pxMain(int, char**) /home/runner/pxCore/examples/pxScene2d/src/pxScene.cpp:679 (pxscene+0x5020e4)
    #32 main /home/runner/pxCore/src/wayland_egl/pxEventLoopNative.cpp:50 (pxscene+0x473ffe)

  Previous write of size 8 at 0x7b0c0000bcc0 by main thread (mutexes: write M474):
    #0 operator delete(void*) <null> (libtsan.so.0+0x75321)
    #1 __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> > >::deallocate(std::_Rb_tree_node<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> >*, unsigned long) /usr/include/c++/8/ext/new_allocator.h:125 (pxscene+0x55105a)
    #2 std::allocator_traits<std::allocator<std::_Rb_tree_node<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> > > >::deallocate(std::allocator<std::_Rb_tree_node<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> > >&, std::_Rb_tree_node<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> >*, unsigned long) /usr/include/c++/8/bits/alloc_traits.h:462 (pxscene+0x55105a)
    #3 std::_Rb_tree<rtIObject*, std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*>, std::_Select1st<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> >, std::less<rtIObject*>, std::allocator<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> > >::_M_put_node(std::_Rb_tree_node<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> >*) /usr/include/c++/8/bits/stl_tree.h:603 (pxscene+0x55105a)
    #4 std::_Rb_tree<rtIObject*, std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*>, std::_Select1st<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> >, std::less<rtIObject*>, std::allocator<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> > >::_M_drop_node(std::_Rb_tree_node<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> >*) /usr/include/c++/8/bits/stl_tree.h:670 (pxscene+0x55105a)
    #5 std::_Rb_tree<rtIObject*, std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*>, std::_Select1st<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> >, std::less<rtIObject*>, std::allocator<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> > >::_M_erase(std::_Rb_tree_node<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> >*) /usr/include/c++/8/bits/stl_tree.h:1874 (pxscene+0x55105a)
    #6 std::_Rb_tree<rtIObject*, std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*>, std::_Select1st<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> >, std::less<rtIObject*>, std::allocator<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> > >::~_Rb_tree() /usr/include/c++/8/bits/stl_tree.h:965 (pxscene+0x5510b9)
    #7 std::map<rtIObject*, rtScriptNodeUtils::ObjectReference*, std::less<rtIObject*>, std::allocator<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> > >::~map() /usr/include/c++/8/bits/stl_map.h:300 (pxscene+0x5510b9)
    #8 <null> <null> (libtsan.so.0+0x287b7)
    #9 rtScript::pump() /home/runner/pxCore/src/rtScript.cpp:221 (pxscene+0x52b9bc)
    #10 sceneWindow::onAnimationTimer() /home/runner/pxCore/examples/pxScene2d/src/pxScene.cpp:393 (pxscene+0x5031ff)
    #11 pxWindowNative::onAnimationTimerInternal() /home/runner/pxCore/src/wayland_egl/pxWindowNative.cpp:496 (pxscene+0x506654)
    #12 pxWindowNative::animateAndRender() /home/runner/pxCore/src/wayland_egl/pxWindowNative.cpp:863 (pxscene+0x507593)
    #13 pxWindowNative::runEventLoop() /home/runner/pxCore/src/wayland_egl/pxWindowNative.cpp:602 (pxscene+0x507a8f)
    #14 pxEventLoop::run() /home/runner/pxCore/src/wayland_egl/pxEventLoopNative.cpp:35 (pxscene+0x508c56)
    #15 pxMain(int, char**) /home/runner/pxCore/examples/pxScene2d/src/pxScene.cpp:679 (pxscene+0x5020e4)
    #16 main /home/runner/pxCore/src/wayland_egl/pxEventLoopNative.cpp:50 (pxscene+0x473ffe)

  Mutex M474 (0x7b1400000550) created at:
    #0 pthread_mutex_init <null> (libtsan.so.0+0x2ccd1)
    #1 v8::internal::ThreadManager::ThreadManager() <null> (libnode8-shared.so.57+0xd16db7)
    #2 rtScriptNode::init() /home/runner/pxCore/src/rtScriptNode/rtScriptNode.cpp:1053 (pxscene+0x53e3a0)
    #3 rtScript::init() /home/runner/pxCore/src/rtScript.cpp:203 (pxscene+0x52b7f0)
    #4 pxMain(int, char**) /home/runner/pxCore/examples/pxScene2d/src/pxScene.cpp:563 (pxscene+0x501795)
    #5 main /home/runner/pxCore/src/wayland_egl/pxEventLoopNative.cpp:50 (pxscene+0x473ffe)

SUMMARY: ThreadSanitizer: heap-use-after-free /usr/include/c++/8/bits/stl_tree.h:1888 in std::_Rb_tree<rtIObject*, std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*>, std::_Select1st<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> >, std::less<rtIObject*>, std::allocator<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> > >::_M_lower_bound(std::_Rb_tree_node<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> >*, std::_Rb_tree_node_base*, rtIObject* const&)
==================
==================
WARNING: ThreadSanitizer: heap-use-after-free (pid=8769)
  Read of size 8 at 0x7b0c0000bcb0 by main thread (mutexes: write M474):
    #0 std::_Rb_tree<rtIObject*, std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*>, std::_Select1st<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> >, std::less<rtIObject*>, std::allocator<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> > >::_M_lower_bound(std::_Rb_tree_node<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> >*, std::_Rb_tree_node_base*, rtIObject* const&) /usr/include/c++/8/bits/stl_tree.h:1889 (pxscene+0x551123)
    #1 std::_Rb_tree<rtIObject*, std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*>, std::_Select1st<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> >, std::less<rtIObject*>, std::allocator<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> > >::find(rtIObject* const&) /usr/include/c++/8/bits/stl_tree.h:2539 (pxscene+0x551123)
    #2 std::map<rtIObject*, rtScriptNodeUtils::ObjectReference*, std::less<rtIObject*>, std::allocator<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> > >::find(rtIObject* const&) /usr/include/c++/8/bits/stl_map.h:1170 (pxscene+0x550422)
    #3 rtScriptNodeUtils::HandleMap::lookupSurrogate(v8::Local<v8::Context>&, rtObjectRef const&) /home/runner/pxCore/src/rtScriptNode/rtWrapperUtils.cpp:309 (pxscene+0x550422)
    #4 rtScriptNodeUtils::rtObjectWrapper::createFromObjectReference(v8::Local<v8::Context>&, rtObjectRef const&) /home/runner/pxCore/src/rtScriptNode/rtObjectWrapper.cpp:115 (pxscene+0x54ba33)
    #5 rtScriptNodeUtils::rt2js(v8::Local<v8::Context>&, rtValue const&) /home/runner/pxCore/src/rtScriptNode/rtWrapperUtils.cpp:428 (pxscene+0x54f68a)
    #6 rtScriptNodeUtils::jsCallback::makeArgs(v8::Local<v8::Context>&) /home/runner/pxCore/src/rtScriptNode/jsCallback.cpp:78 (pxscene+0x566e60)
    #7 rtScriptNodeUtils::jsCallback::run() /home/runner/pxCore/src/rtScriptNode/jsCallback.cpp:114 (pxscene+0x567397)
    #8 rtScriptNodeUtils::jsFunctionWrapper::Send(int, rtValue const*, rtValue*) /home/runner/pxCore/src/rtScriptNode/rtFunctionWrapper.cpp:430 (pxscene+0x547e46)
    #9 rtEmit::Send(int, rtValue const*, rtValue*) /home/runner/pxCore/src/rtObject.cpp:150 (pxscene+0x573030)
    #10 rtEmitRef::Send(int, rtValue const*, rtValue*) /home/runner/pxCore/src/rtObject.cpp:212 (pxscene+0x5709f8)
    #11 rtFunctionBase::Send(int, rtValue const*) /home/runner/pxCore/src/rtObject.h:222 (pxscene+0x5723af)
    #12 rtFunctionBase::send(rtValue const&, rtValue const&) /home/runner/pxCore/src/rtObject.cpp:559 (pxscene+0x5723af)
    #13 pxScene2d::dispose() /home/runner/pxCore/examples/pxScene2d/src/pxScene2d.cpp:1947 (pxscene+0x4aa583)
    #14 pxScene2d::dispose_thunk(int, rtValue const*, rtValue&) /home/runner/pxCore/examples/pxScene2d/src/pxScene2d.h:1346 (pxscene+0x4d49bc)
    #15 rtObjectFunction::Send(int, rtValue const*, rtValue*) /home/runner/pxCore/src/rtObject.cpp:630 (pxscene+0x570eaa)
    #16 rtObjectBase::Send(char const*, int, rtValue const*) /home/runner/pxCore/src/rtObject.cpp:493 (pxscene+0x572b24)
    #17 rtObjectBase::send(char const*) /home/runner/pxCore/src/rtObject.cpp:509 (pxscene+0x571d5c)
    #18 pxScriptView::~pxScriptView() /home/runner/pxCore/examples/pxScene2d/src/pxScene2d.h:1098 (pxscene+0x4ca404)
    #19 pxScriptView::~pxScriptView() /home/runner/pxCore/examples/pxScene2d/src/pxScene2d.h:1102 (pxscene+0x4ca9ec)
    #20 pxScriptView::Release() /home/runner/pxCore/examples/pxScene2d/src/pxScene2d.h:1116 (pxscene+0x4ca9ec)
    #21 rtRef<pxIView>::asn(pxIView const*) /home/runner/pxCore/examples/pxScene2d/src/../../../src/rtRef.h:74 (pxscene+0x5032bd)
    #22 rtRef<pxIView>::operator=(pxIView const*) /home/runner/pxCore/examples/pxScene2d/src/../../../src/rtRef.h:58 (pxscene+0x5032bd)
    #23 sceneWindow::~sceneWindow() /home/runner/pxCore/examples/pxScene2d/src/pxScene.cpp:146 (pxscene+0x5032bd)
    #24 <null> <null> (libtsan.so.0+0x287b7)
    #25 rtScript::pump() /home/runner/pxCore/src/rtScript.cpp:221 (pxscene+0x52b9bc)
    #26 sceneWindow::onAnimationTimer() /home/runner/pxCore/examples/pxScene2d/src/pxScene.cpp:393 (pxscene+0x5031ff)
    #27 pxWindowNative::onAnimationTimerInternal() /home/runner/pxCore/src/wayland_egl/pxWindowNative.cpp:496 (pxscene+0x506654)
    #28 pxWindowNative::animateAndRender() /home/runner/pxCore/src/wayland_egl/pxWindowNative.cpp:863 (pxscene+0x507593)
    #29 pxWindowNative::runEventLoop() /home/runner/pxCore/src/wayland_egl/pxWindowNative.cpp:602 (pxscene+0x507a8f)
    #30 pxEventLoop::run() /home/runner/pxCore/src/wayland_egl/pxEventLoopNative.cpp:35 (pxscene+0x508c56)
    #31 pxMain(int, char**) /home/runner/pxCore/examples/pxScene2d/src/pxScene.cpp:679 (pxscene+0x5020e4)
    #32 main /home/runner/pxCore/src/wayland_egl/pxEventLoopNative.cpp:50 (pxscene+0x473ffe)

  Previous write of size 8 at 0x7b0c0000bcb0 by main thread (mutexes: write M474):
    #0 operator delete(void*) <null> (libtsan.so.0+0x75321)
    #1 __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> > >::deallocate(std::_Rb_tree_node<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> >*, unsigned long) /usr/include/c++/8/ext/new_allocator.h:125 (pxscene+0x55105a)
    #2 std::allocator_traits<std::allocator<std::_Rb_tree_node<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> > > >::deallocate(std::allocator<std::_Rb_tree_node<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> > >&, std::_Rb_tree_node<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> >*, unsigned long) /usr/include/c++/8/bits/alloc_traits.h:462 (pxscene+0x55105a)
    #3 std::_Rb_tree<rtIObject*, std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*>, std::_Select1st<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> >, std::less<rtIObject*>, std::allocator<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> > >::_M_put_node(std::_Rb_tree_node<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> >*) /usr/include/c++/8/bits/stl_tree.h:603 (pxscene+0x55105a)
    #4 std::_Rb_tree<rtIObject*, std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*>, std::_Select1st<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> >, std::less<rtIObject*>, std::allocator<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> > >::_M_drop_node(std::_Rb_tree_node<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> >*) /usr/include/c++/8/bits/stl_tree.h:670 (pxscene+0x55105a)
    #5 std::_Rb_tree<rtIObject*, std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*>, std::_Select1st<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> >, std::less<rtIObject*>, std::allocator<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> > >::_M_erase(std::_Rb_tree_node<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> >*) /usr/include/c++/8/bits/stl_tree.h:1874 (pxscene+0x55105a)
    #6 std::_Rb_tree<rtIObject*, std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*>, std::_Select1st<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> >, std::less<rtIObject*>, std::allocator<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> > >::~_Rb_tree() /usr/include/c++/8/bits/stl_tree.h:965 (pxscene+0x5510b9)
    #7 std::map<rtIObject*, rtScriptNodeUtils::ObjectReference*, std::less<rtIObject*>, std::allocator<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> > >::~map() /usr/include/c++/8/bits/stl_map.h:300 (pxscene+0x5510b9)
    #8 <null> <null> (libtsan.so.0+0x287b7)
    #9 rtScript::pump() /home/runner/pxCore/src/rtScript.cpp:221 (pxscene+0x52b9bc)
    #10 sceneWindow::onAnimationTimer() /home/runner/pxCore/examples/pxScene2d/src/pxScene.cpp:393 (pxscene+0x5031ff)
    #11 pxWindowNative::onAnimationTimerInternal() /home/runner/pxCore/src/wayland_egl/pxWindowNative.cpp:496 (pxscene+0x506654)
    #12 pxWindowNative::animateAndRender() /home/runner/pxCore/src/wayland_egl/pxWindowNative.cpp:863 (pxscene+0x507593)
    #13 pxWindowNative::runEventLoop() /home/runner/pxCore/src/wayland_egl/pxWindowNative.cpp:602 (pxscene+0x507a8f)
    #14 pxEventLoop::run() /home/runner/pxCore/src/wayland_egl/pxEventLoopNative.cpp:35 (pxscene+0x508c56)
    #15 pxMain(int, char**) /home/runner/pxCore/examples/pxScene2d/src/pxScene.cpp:679 (pxscene+0x5020e4)
    #16 main /home/runner/pxCore/src/wayland_egl/pxEventLoopNative.cpp:50 (pxscene+0x473ffe)

  Mutex M474 (0x7b1400000550) created at:
    #0 pthread_mutex_init <null> (libtsan.so.0+0x2ccd1)
    #1 v8::internal::ThreadManager::ThreadManager() <null> (libnode8-shared.so.57+0xd16db7)
    #2 rtScriptNode::init() /home/runner/pxCore/src/rtScriptNode/rtScriptNode.cpp:1053 (pxscene+0x53e3a0)
    #3 rtScript::init() /home/runner/pxCore/src/rtScript.cpp:203 (pxscene+0x52b7f0)
    #4 pxMain(int, char**) /home/runner/pxCore/examples/pxScene2d/src/pxScene.cpp:563 (pxscene+0x501795)
    #5 main /home/runner/pxCore/src/wayland_egl/pxEventLoopNative.cpp:50 (pxscene+0x473ffe)

SUMMARY: ThreadSanitizer: heap-use-after-free /usr/include/c++/8/bits/stl_tree.h:1889 in std::_Rb_tree<rtIObject*, std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*>, std::_Select1st<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> >, std::less<rtIObject*>, std::allocator<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> > >::_M_lower_bound(std::_Rb_tree_node<std::pair<rtIObject* const, rtScriptNodeUtils::ObjectReference*> >*, std::_Rb_tree_node_base*, rtIObject* const&)
@dwrobel dwrobel changed the title ThreadSanitizer(testRunner_v5.js, exit): heap-use-after-free @rtWrapperUtils.cpp:309 in rtScriptNodeUtils::HandleMap::lookupSurrogate() ThreadSanitizer(testRunner_v5.js, sci, exit): heap-use-after-free @rtWrapperUtils.cpp:309 in rtScriptNodeUtils::HandleMap::lookupSurrogate() Jun 20, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant