-
-
Notifications
You must be signed in to change notification settings - Fork 56.5k
objdetect: sporadic crashes in QR code tests #18669
Copy link
Copy link
Closed
Milestone
Description
relates #18003
[----------] 8 tests from Objdetect_QRCode_Curved
[ RUN ] Objdetect_QRCode_Curved.regression/0, where GetParam() = "curved_1.jpg"
[ OK ] Objdetect_QRCode_Curved.regression/0 (1032 ms)
[ RUN ] Objdetect_QRCode_Curved.regression/1, where GetParam() = "curved_2.jpg"
Process returned: 3221226505
ERROR: some tests have failed
program finished with exit code -1
[----------] 8 tests from Objdetect_QRCode_Curved
[ RUN ] Objdetect_QRCode_Curved.regression/0, where GetParam() = "curved_1.jpg"
[ OK ] Objdetect_QRCode_Curved.regression/0 (734 ms)
[ RUN ] Objdetect_QRCode_Curved.regression/1, where GetParam() = "curved_2.jpg"
Process returned: 3221226505
ERROR: some tests have failed
program finished with exit code -1
[ RUN ] Objdetect_QRCode_Curved.regression/2, where GetParam() = "curved_3.jpg"
unknown file: error: SEH exception with code 0xc0000005 thrown in the test body.
[ FAILED ] Objdetect_QRCode_Curved.regression/2, where GetParam() = "curved_3.jpg" (24 ms)
[ RUN ] Objdetect_QRCode_Curved.regression/1, where GetParam() = "curved_2.jpg"
==14048== Invalid read of size 4
==14048== at 0x4E8A049: Point_ (types.hpp:1157)
==14048== by 0x4E8A049: cv::QRDecode::findAndAddStablePoint(std::vector<cv::Point_<int>, std::allocator<cv::Point_<int> > > const&) (qrcode.cpp:1390)
==14048== by 0x4E95736: cv::QRDecode::preparingCurvedQRCodes() (qrcode.cpp:2214)
==14048== by 0x4E957AE: cv::QRDecode::curvedDecodingProcess() (qrcode.cpp:2452)
==14048== by 0x4E95C14: cv::QRCodeDetector::decodeCurved(cv::_InputArray const&, cv::_InputArray const&, cv::_OutputArray const&) (qrcode.cpp:2519)
==14048== by 0x4E9617D: cv::QRCodeDetector::detectAndDecodeCurved(cv::_InputArray const&, cv::_OutputArray const&, cv::_OutputArray const&) (qrcode.cpp:2575)
==14048== by 0x13CD77: opencv_test::(anonymous namespace)::Objdetect_QRCode_Curved_regression_Test::Body() (test_qrcode.cpp:442)
==14048== by 0x1301FF: opencv_test::(anonymous namespace)::Objdetect_QRCode_Curved_regression_Test::TestBody() (test_qrcode.cpp:428)
==14048== by 0x16FA4D: HandleSehExceptionsInMethodIfSupported<testing::Test, void> (ts_gtest.cpp:3917)
==14048== by 0x16FA4D: void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (ts_gtest.cpp:3953)
==14048== by 0x16FC10: testing::Test::Run() (ts_gtest.cpp:3991)
==14048== by 0x16FEB1: testing::TestInfo::Run() (ts_gtest.cpp:4167)
==14048== by 0x1700F2: testing::TestCase::Run() (ts_gtest.cpp:4285)
==14048== by 0x1702EC: testing::internal::UnitTestImpl::RunAllTests() (ts_gtest.cpp:6660)
==14048== Address 0x1bd3f8c0 is 0 bytes after a block of size 32 alloc'd
==14048== at 0x4C3017F: operator new(unsigned long) (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==14048== by 0x4E7A8C1: allocate (new_allocator.h:111)
==14048== by 0x4E7A8C1: allocate (alloc_traits.h:436)
==14048== by 0x4E7A8C1: _M_allocate (stl_vector.h:172)
==14048== by 0x4E7A8C1: _M_allocate_and_copy<__gnu_cxx::__normal_iterator<const cv::Point_<float>*, std::vector<cv::Point_<float> > > > (stl_vector.h:1260)
==14048== by 0x4E7A8C1: std::vector<cv::Point_<float>, std::allocator<cv::Point_<float> > >::operator=(std::vector<cv::Point_<float>, std::allocator<cv::Point_<float> > > const&) (vector.tcc:206)
==14048== by 0x4E7AFC0: cv::QRDecode::init(cv::Mat const&, std::vector<cv::Point_<float>, std::allocator<cv::Point_<float> > > const&) (qrcode.cpp:1066)
==14048== by 0x4E95B7A: cv::QRCodeDetector::decodeCurved(cv::_InputArray const&, cv::_InputArray const&, cv::_OutputArray const&) (qrcode.cpp:2518)
==14048== by 0x4E9617D: cv::QRCodeDetector::detectAndDecodeCurved(cv::_InputArray const&, cv::_OutputArray const&, cv::_OutputArray const&) (qrcode.cpp:2575)
==14048== by 0x13CD77: opencv_test::(anonymous namespace)::Objdetect_QRCode_Curved_regression_Test::Body() (test_qrcode.cpp:442)
==14048== by 0x1301FF: opencv_test::(anonymous namespace)::Objdetect_QRCode_Curved_regression_Test::TestBody() (test_qrcode.cpp:428)
==14048== by 0x16FA4D: HandleSehExceptionsInMethodIfSupported<testing::Test, void> (ts_gtest.cpp:3917)
==14048== by 0x16FA4D: void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (ts_gtest.cpp:3953)
==14048== by 0x16FC10: testing::Test::Run() (ts_gtest.cpp:3991)
==14048== by 0x16FEB1: testing::TestInfo::Run() (ts_gtest.cpp:4167)
==14048== by 0x1700F2: testing::TestCase::Run() (ts_gtest.cpp:4285)
==14048== by 0x1702EC: testing::internal::UnitTestImpl::RunAllTests() (ts_gtest.cpp:6660)
/cc @APrigarina @allnes
Reactions are currently unavailable