Mir

Code review comment for lp:~raof/mir/client-side-buffer-age

Revision history for this message
Alan Griffiths (alan-griffiths) wrote :

[ RUN ] MirGBMBufferDepositoryTest.depository_forgets_old_buffers
==21586== Invalid read of size 4
==21586== at 0x4365E04: std::_Rb_tree_increment(std::_Rb_tree_node_base*) (in /usr/lib/i386-linux-gnu/libstdc++.so.6.0.17)
==21586== by 0x4058FBA: mir::client::gbm::GBMClientBufferDepository::deposit_package(std::shared_ptr<mir_toolkit::MirBufferPackage>&&, int, mir::geometry::Size, mir::geometry::PixelFormat) (stl_tree.h:188)
==21586== by 0x8276E2D: MirGBMBufferDepositoryTest_depository_forgets_old_buffers_Test::TestBody() (test_gbm_client_depository.cpp:226)
==21586== by 0x850407B: void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (gtest.cc:2090)
==21586== by 0x84FB651: testing::Test::Run() (gtest.cc:2162)
==21586== by 0x84FB737: testing::TestInfo::Run() (gtest.cc:2338)
==21586== by 0x84FB886: testing::TestCase::Run() (gtest.cc:2445)
==21586== by 0x84FBB84: testing::internal::UnitTestImpl::RunAllTests() (gtest.cc:4243)
==21586== by 0x8503C5B: bool testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) (gtest.cc:2090)
==21586== by 0x84FABFB: testing::UnitTest::Run() (gtest.cc:3880)
==21586== by 0x4467934: (below main) (libc-start.c:260)
==21586== Address 0x49a209c is 12 bytes inside a block of size 28 free'd
==21586== at 0x402ACFC: operator delete(void*) (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so)
==21586== by 0x405999F: std::_Rb_tree<unsigned int, std::pair<unsigned int const, std::shared_ptr<mir::client::gbm::GBMClientBuffer> >, std::_Select1st<std::pair<unsigned int const, std::shared_ptr<mir::client::gbm::GBMClientBuffer> > >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, std::shared_ptr<mir::client::gbm::GBMClientBuffer> > > >::_M_erase_aux(std::_Rb_tree_const_iterator<std::pair<unsigned int const, std::shared_ptr<mir::client::gbm::GBMClientBuffer> > >, std::_Rb_tree_const_iterator<std::pair<unsigned int const, std::shared_ptr<mir::client::gbm::GBMClientBuffer> > >) (new_allocator.h:98)
==21586==
==21586== Invalid read of size 4
==21586== at 0x4365E1B: std::_Rb_tree_increment(std::_Rb_tree_node_base*) (in /usr/lib/i386-linux-gnu/libstdc++.so.6.0.17)
==21586== by 0x4058FBA: mir::client::gbm::GBMClientBufferDepository::deposit_package(std::shared_ptr<mir_toolkit::MirBufferPackage>&&, int, mir::geometry::Size, mir::geometry::PixelFormat) (stl_tree.h:188)
==21586== by 0x8276E2D: MirGBMBufferDepositoryTest_depository_forgets_old_buffers_Test::TestBody() (test_gbm_client_depository.cpp:226)
==21586== by 0x850407B: void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (gtest.cc:2090)
==21586== by 0x84FB651: testing::Test::Run() (gtest.cc:2162)
==21586== by 0x84FB737: testing::TestInfo::Run() (gtest.cc:2338)
==21586== by 0x84FB886: testing::TestCase::Run() (gtest.cc:2445)
==21586== by 0x84FBB84: testing::internal::UnitTestImpl::RunAllTests() (gtest.cc:4243)
==21586== by 0x8503C5B: bool testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) (gtest.cc:2090)
==21586== by 0x84FABFB: testing::UnitTest::Run() (gtest.cc:3880)
==21586== by 0x4467934: (below main) (libc-start.c:260)
==21586== Address 0x49a2094 is 4 bytes inside a block of size 28 free'd
==21586== at 0x402ACFC: operator delete(void*) (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so)
==21586== by 0x405999F: std::_Rb_tree<unsigned int, std::pair<unsigned int const, std::shared_ptr<mir::client::gbm::GBMClientBuffer> >, std::_Select1st<std::pair<unsigned int const, std::shared_ptr<mir::client::gbm::GBMClientBuffer> > >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, std::shared_ptr<mir::client::gbm::GBMClientBuffer> > > >::_M_erase_aux(std::_Rb_tree_const_iterator<std::pair<unsigned int const, std::shared_ptr<mir::client::gbm::GBMClientBuffer> > >, std::_Rb_tree_const_iterator<std::pair<unsigned int const, std::shared_ptr<mir::client::gbm::GBMClientBuffer> > >) (new_allocator.h:98)
==21586==

review: Needs Fixing

« Back to merge proposal