Looks like the SIGNAL loadFinished(bool) is not emitted anymore with Qt 6.8.1
-
Thank you.
I compiled also your version. (see next message).I compiled my code I posted above. So in application, but with your functions and it failed.
I enabled all debug information. Also from Qt.
Maybe a skilled person can see the problem? (I was forced to shorten it. So you can see the beginning. A bit from the mid and the end only.==4988== Syscall param writev(vector[0]) points to uninitialised byte(s) ==4988== at 0x68D589B: __writev (writev.c:26) ==4988== by 0x68D589B: writev (writev.c:24) ==4988== by 0x15FA2ACA: ??? (in /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0) ==4988== by 0x15FA2C4E: ??? (in /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0) ==4988== by 0x15FA2DA6: ??? (in /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0) ==4988== by 0x15FA2F94: ??? (in /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0) ==4988== by 0x15FA3E6D: xcb_wait_for_reply (in /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0) ==4988== by 0x1718278E: QXcbConnection::initializeScreensFromMonitor(xcb_screen_iterator_t*, int, QXcbScreen**, bool) (in /home/volker/Qt6.8/6.8.1/gcc_64/lib/libQt6XcbQpa.so.6.8.1) ==4988== by 0x17183EDE: QXcbConnection::initializeScreens(bool) (in /home/volker/Qt6.8/6.8.1/gcc_64/lib/libQt6XcbQpa.so.6.8.1) ==4988== by 0x1717B1A1: QXcbConnection::QXcbConnection(QXcbNativeInterface*, bool, unsigned int, char const*) (in /home/volker/Qt6.8/6.8.1/gcc_64/lib/libQt6XcbQpa.so.6.8.1) ==4988== by 0x1719F034: QXcbIntegration::QXcbIntegration(QList<QString> const&, int&, char**) (in /home/volker/Qt6.8/6.8.1/gcc_64/lib/libQt6XcbQpa.so.6.8.1) ==4988== by 0x64E7522: ??? (in /home/volker/Qt6.8/6.8.1/gcc_64/plugins/platforms/libqxcb.so) ==4988== by 0x52E492E: ??? (in /home/volker/Qt6.8/6.8.1/gcc_64/lib/libQt6Gui.so.6.8.1) ==4988== Address 0x16867395 is 4,533 bytes inside a block of size 21,176 alloc'd ==4988== at 0x484D953: calloc (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so) ==4988== by 0x15FA5396: xcb_connect_to_fd (in /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0) ==4988== by 0x15FA60D9: xcb_connect_to_display_with_auth_info (in /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0) ==4988== by 0x133AC3C9: _XConnectXCB (in /usr/lib/x86_64-linux-gnu/libX11.so.6.4.0) ==4988== by 0x1339D0FD: XOpenDisplay (in /usr/lib/x86_64-linux-gnu/libX11.so.6.4.0) ==4988== by 0x1717FE30: QXcbBasicConnection::QXcbBasicConnection(char const*) (in /home/volker/Qt6.8/6.8.1/gcc_64/lib/libQt6XcbQpa.so.6.8.1) ==4988== by 0x1717AF83: QXcbConnection::QXcbConnection(QXcbNativeInterface*, bool, unsigned int, char const*) (in /home/volker/Qt6.8/6.8.1/gcc_64/lib/libQt6XcbQpa.so.6.8.1) ==4988== by 0x1719F034: QXcbIntegration::QXcbIntegration(QList<QString> const&, int&, char**) (in /home/volker/Qt6.8/6.8.1/gcc_64/lib/libQt6XcbQpa.so.6.8.1) ==4988== by 0x64E7522: ??? (in /home/volker/Qt6.8/6.8.1/gcc_64/plugins/platforms/libqxcb.so) ==4988== by 0x52E492E: ??? (in /home/volker/Qt6.8/6.8.1/gcc_64/lib/libQt6Gui.so.6.8.1) ==4988== by 0x52E81B6: QGuiApplicationPrivate::createPlatformIntegration() (in /home/volker/Qt6.8/6.8.1/gcc_64/lib/libQt6Gui.so.6.8.1) ==4988== by 0x52E8B87: QGuiApplicationPrivate::createEventDispatcher() (in /home/volker/Qt6.8/6.8.1/gcc_64/lib/libQt6Gui.so.6.8.1) ==4988== ... ==4988== Conditional jump or move depends on uninitialised value(s) ==4988== at 0x298C8DCD: ??? ==4988== by 0x29FFD87F: ??? ==4988== ... ==4988== Conditional jump or move depends on uninitialised value(s) ==4988== at 0xCFAE261: contains (sparse_set.h:227) ==4988== by 0xCFAE261: re2::AddQ(re2::SparseSetT<void>*, int) [clone .part.0] (onepass.cc:355) ==4988== by 0xCFAEA5B: AddQ (onepass.cc:353) ==4988== by 0xCFAEA5B: re2::Prog::IsOnePass() (onepass.cc:519) ==4988== by 0xCF8EED7: re2::RE2::Init(std::basic_string_view<char, std::char_traits<char> >, re2::RE2::Options const&) (re2.cc:273) ==4988== by 0xCF8F598: re2::RE2::RE2(char const*) (re2.cc:141) ==4988== by 0x81EEB14: gpu::(anonymous namespace)::ProcessANGLEGLRenderer(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*) [clone .constprop.0] (gpu_control_list.cc:126) ==4988== by 0x81EF855: gpu::GpuControlList::GLStrings::Contains(gpu::GPUInfo const&) const (gpu_control_list.cc:323) ==4988== by 0x81F2802: gpu::GpuControlList::Conditions::Contains(gpu::GpuControlList::OsType, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, gpu::GPUInfo const&) const [clone .part.0] (gpu_control_list.cc:555) ==4988== by 0x81F2C9B: Contains (gpu_control_list.cc:574) ==4988== by 0x81F2C9B: gpu::GpuControlList::Entry::Contains(gpu::GpuControlList::OsType, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, gpu::GPUInfo const&) const (gpu_control_list.cc:574) ==4988== by 0x81F30AA: gpu::GpuControlList::MakeDecision(gpu::GpuControlList::OsType, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, gpu::GPUInfo const&, unsigned int) (gpu_control_list.cc:702) ==4988== by 0x8205B46: gpu::ComputeGpuFeatureInfo(gpu::GPUInfo const&, gpu::GpuPreferences const&, base::CommandLine*, bool*) (gpu_util.cc:595) ==4988== by 0xDA19F7E: gpu::GpuInit::InitializeInProcess(base::CommandLine*, gpu::GpuPreferences const&) (gpu_init.cc:937) ==4988== by 0xDCA3632: content::InProcessGpuThread::Init() (in_process_gpu_thread.cc:71) ==4988== ==4988== Use of uninitialised value of size 8 ==4988== at 0xCFAE266: contains (sparse_set.h:227) ==4988== by 0xCFAE266: re2::AddQ(re2::SparseSetT<void>*, int) [clone .part.0] (onepass.cc:355) ==4988== by 0xCFAEA5B: AddQ (onepass.cc:353) ==4988== by 0xCFAEA5B: re2::Prog::IsOnePass() (onepass.cc:519) ==4988== by 0xCF8EED7: re2::RE2::Init(std::basic_string_view<char, std::char_traits<char> >, re2::RE2::Options const&) (re2.cc:273) ==4988== by 0xCF8F598: re2::RE2::RE2(char const*) (re2.cc:141) ==4988== by 0x81EEB14: gpu::(anonymous namespace)::ProcessANGLEGLRenderer(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*) [clone .constprop.0] (gpu_control_list.cc:126) ==4988== by 0x81F1F2B: gpu::GpuControlList::More::Contains(gpu::GPUInfo const&) const (gpu_control_list.cc:363) ==4988== by 0x81F2995: gpu::GpuControlList::Conditions::Contains(gpu::GpuControlList::OsType, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, gpu::GPUInfo const&) const [clone .part.0] (gpu_control_list.cc:561) ==4988== by 0x81F2C9B: Contains (gpu_control_list.cc:574) ==4988== by 0x81F2C9B: gpu::GpuControlList::Entry::Contains(gpu::GpuControlList::OsType, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, gpu::GPUInfo const&) const (gpu_control_list.cc:574) ==4988== by 0x81F30AA: gpu::GpuControlList::MakeDecision(gpu::GpuControlList::OsType, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, gpu::GPUInfo const&, unsigned int) (gpu_control_list.cc:702) ==4988== by 0x8205B46: gpu::ComputeGpuFeatureInfo(gpu::GPUInfo const&, gpu::GpuPreferences const&, base::CommandLine*, bool*) (gpu_util.cc:595) ==4988== by 0xDA19F7E: gpu::GpuInit::InitializeInProcess(base::CommandLine*, gpu::GpuPreferences const&) (gpu_init.cc:937) ==4988== by 0xDCA3632: content::InProcessGpuThread::Init() (in_process_gpu_thread.cc:71) ==4988== ==4988== Use of uninitialised value of size 8 ==4988== at 0xCFAE266: contains (sparse_set.h:227) ==4988== by 0xCFAE266: re2::AddQ(re2::SparseSetT<void>*, int) [clone .part.0] (onepass.cc:355) ==4988== by 0xCFAE974: AddQ (onepass.cc:353) ==4988== by 0xCFAE974: re2::Prog::IsOnePass() (onepass.cc:548) ==4988== by 0xCF8EED7: re2::RE2::Init(std::basic_string_view<char, std::char_traits<char> >, re2::RE2::Options const&) (re2.cc:273) ==4988== by 0xCF8F598: re2::RE2::RE2(char const*) (re2.cc:141) ==4988== by 0x81EEB14: gpu::(anonymous namespace)::ProcessANGLEGLRenderer(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*) [clone .constprop.0] (gpu_control_list.cc:126) ==4988== by 0x81F1F2B: gpu::GpuControlList::More::Contains(gpu::GPUInfo const&) const (gpu_control_list.cc:363) ==4988== by 0x81F2995: gpu::GpuControlList::Conditions::Contains(gpu::GpuControlList::OsType, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, gpu::GPUInfo const&) const [clone .part.0] (gpu_control_list.cc:561) ==4988== by 0x81F2C9B: Contains (gpu_control_list.cc:574) ==4988== by 0x81F2C9B: gpu::GpuControlList::Entry::Contains(gpu::GpuControlList::OsType, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, gpu::GPUInfo const&) const (gpu_control_list.cc:574) ==4988== by 0x81F30AA: gpu::GpuControlList::MakeDecision(gpu::GpuControlList::OsType, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, gpu::GPUInfo const&, unsigned int) (gpu_control_list.cc:702) ==4988== by 0x8205B46: gpu::ComputeGpuFeatureInfo(gpu::GPUInfo const&, gpu::GpuPreferences const&, base::CommandLine*, bool*) (gpu_util.cc:595) ==4988== by 0xDA19F7E: gpu::GpuInit::InitializeInProcess(base::CommandLine*, gpu::GpuPreferences const&) (gpu_init.cc:937) ==4988== by 0xDCA3632: content::InProcessGpuThread::Init() (in_process_gpu_thread.cc:71) ==4988== ==4988== Thread 1: ==4988== Conditional jump or move depends on uninitialised value(s) ==4988== at 0x298C8C6F: ??? ==4988== by 0x2C7C01FF: ??? ==4988== ==4988== Conditional jump or move depends on uninitialised value(s) ==4988== at 0x298C8C6F: ??? ==4988== by 0x2C7D69AF: ??? ==4988== ==4988== Conditional jump or move depends on uninitialised value(s) ==4988== at 0x298C8C6F: ??? ==4988== by 0x2C7A7D0F: ??? ==4988== ==4988== Conditional jump or move depends on uninitialised value(s) ==4988== at 0x298C8C6F: ??? ==4988== by 0x2C7DD7EF: ??? ==4988== 15 ==4988== Thread 28 Chrome_InProcGpu: ==4988== Conditional jump or move depends on uninitialised value(s) ==4988== at 0xCFA3A2C: contains (sparse_set.h:227) ==4988== by 0xCFA3A2C: re2::DFA::AddToQueue(re2::DFA::Workq*, int, unsigned int) (dfa.cc:867) ==4988== by 0xCFA5C64: re2::DFA::AnalyzeSearchHelper(re2::DFA::SearchParams*, re2::DFA::StartInfo*, unsigned int) (dfa.cc:1736) ==4988== by 0xCFA5D72: re2::DFA::AnalyzeSearch(re2::DFA::SearchParams*) (dfa.cc:1693) ==4988== by 0xCFA632E: re2::DFA::Search(std::basic_string_view<char, std::char_traits<char> >, std::basic_string_view<char, std::char_traits<char> >, bool, bool, bool, bool*, char const**, re2::SparseSetT<void>*) (dfa.cc:1774) ==4988== by 0xCFA64CC: re2::Prog::SearchDFA(std::basic_string_view<char, std::char_traits<char> >, std::basic_string_view<char, std::char_traits<char> >, re2::Prog::Anchor, re2::Prog::MatchKind, std::basic_string_view<char, std::char_traits<char> >*, bool*, re2::SparseSetT<void>*) (dfa.cc:1886) ==4988== by 0xCF909C9: re2::RE2::Match(std::basic_string_view<char, std::char_traits<char> >, unsigned long, unsigned long, re2::RE2::Anchor, std::basic_string_view<char, std::char_traits<char> >*, int) const (re2.cc:838) ==4988== by 0xCF915E5: re2::RE2::DoMatch(std::basic_string_view<char, std::char_traits<char> >, re2::RE2::Anchor, unsigned long*, re2::RE2::Arg const* const*, int) const (re2.cc:935) ==4988== by 0xCF919E8: re2::RE2::FullMatchN(std::basic_string_view<char, std::char_traits<char> >, re2::RE2 const&, re2::RE2::Arg const* const*, int) (re2.cc:410) ==4988== by 0x81EF5D9: Apply<bool (*)(std::basic_string_view<char>, const re2::RE2&, const re2::RE2::Arg* const*, int), std::basic_string_view<char> > (re2.h:358) ==4988== by 0x81EF5D9: FullMatch<> (re2.h:410) ==4988== by 0x81EF5D9: StringMismatch (gpu_control_list.cc:109) ==4988== by 0x81EF5D9: gpu::(anonymous namespace)::StringMismatch(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const*) [clone .part.0] (gpu_control_list.cc:116) ==4988== by 0x81EF8EF: StringMismatch (gpu_control_list.cc:113) ==4988== by 0x81EF8EF: gpu::GpuControlList::GLStrings::Contains(gpu::GPUInfo const&) const (gpu_control_list.cc:328) ==4988== by 0x81F2802: gpu::GpuControlList::Conditions::Contains(gpu::GpuControlList::OsType, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, gpu::GPUInfo const&) const [clone .part.0] (gpu_control_list.cc:555) ==4988== by 0x81F2C9B: Contains (gpu_control_list.cc:574) ==4988== by 0x81F2C9B: gpu::GpuControlList::Entry::Contains(gpu::GpuControlList::OsType, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, gpu::GPUInfo const&) const (gpu_control_list.cc:574) ==4988== ==4988== Use of uninitialised value of size 8 ==4988== at 0xCFA3B70: contains (sparse_set.h:227) ==4988== by 0xCFA3B70: re2::DFA::AddToQueue(re2::DFA::Workq*, int, unsigned int) (dfa.cc:867) ==4988== by 0xCFA5C64: re2::DFA::AnalyzeSearchHelper(re2::DFA::SearchParams*, re2::DFA::StartInfo*, unsigned int) (dfa.cc:1736) ==4988== by 0xCFA5D72: re2::DFA::AnalyzeSearch(re2::DFA::SearchParams*) (dfa.cc:1693) ==4988== by 0xCFA632E: re2::DFA::Search(std::basic_string_view<char, std::char_traits<char> >, std::basic_string_view<char, std::char_traits<char> >, bool, bool, bool, bool*, char const**, re2::SparseSetT<void>*) (dfa.cc:1774) ==4988== by 0xCFA64CC: re2::Prog::SearchDFA(std::basic_string_view<char, std::char_traits<char> >, std::basic_string_view<char, std::char_traits<char> >, re2::Prog::Anchor, re2::Prog::MatchKind, std::basic_string_view<char, std::char_traits<char> >*, bool*, re2::SparseSetT<void>*) (dfa.cc:1886) ==4988== by 0xCF909C9: re2::RE2::Match(std::basic_string_view<char, std::char_traits<char> >, unsigned long, unsigned long, re2::RE2::Anchor, std::basic_string_view<char, std::char_traits<char> >*, int) const (re2.cc:838) ==4988== by 0xCF915E5: re2::RE2::DoMatch(std::basic_string_view<char, std::char_traits<char> >, re2::RE2::Anchor, unsigned long*, re2::RE2::Arg const* const*, int) const (re2.cc:935) ==4988== by 0xCF919E8: re2::RE2::FullMatchN(std::basic_string_view<char, std::char_traits<char> >, re2::RE2 const&, re2::RE2::Arg const* const*, int) (re2.cc:410) ==4988== by 0x81EF5D9: Apply<bool (*)(std::basic_string_view<char>, const re2::RE2&, const re2::RE2::Arg* const*, int), std::basic_string_view<char> > (re2.h:358) ==4988== by 0x81EF5D9: FullMatch<> (re2.h:410) ==4988== by 0x81EF5D9: StringMismatch (gpu_control_list.cc:109) ==4988== by 0x81EF5D9: gpu::(anonymous namespace)::StringMismatch(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const*) [clone .part.0] (gpu_control_list.cc:116) ==4988== by 0x81EF8EF: StringMismatch (gpu_control_list.cc:113) ==4988== by 0x81EF8EF: gpu::GpuControlList::GLStrings::Contains(gpu::GPUInfo const&) const (gpu_control_list.cc:328) ==4988== by 0x81F2802: gpu::GpuControlList::Conditions::Contains(gpu::GpuControlList::OsType, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, gpu::GPUInfo const&) const [clone .part.0] (gpu_control_list.cc:555) ==4988== by 0x81F2C9B: Contains (gpu_control_list.cc:574) ==4988== by 0x81F2C9B: gpu::GpuControlList::Entry::Contains(gpu::GpuControlList::OsType, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, gpu::GPUInfo const&) const (gpu_control_list.cc:574) ==4988== ==4988== Conditional jump or move depends on uninitialised value(s) ==4988== at 0xCFA3A2C: contains (sparse_set.h:227) ==4988== by 0xCFA3A2C: re2::DFA::AddToQueue(re2::DFA::Workq*, int, unsigned int) (dfa.cc:867) ==4988== by 0xCFA4113: re2::DFA::RunWorkqOnByte(re2::DFA::Workq*, re2::DFA::Workq*, int, unsigned int, bool*) (dfa.cc:977) ==4988== by 0xCFA5738: re2::DFA::RunStateOnByte(re2::DFA::State*, int) (dfa.cc:1089) ==4988== by 0xCFA7569: RunStateOnByteUnlocked (dfa.cc:1016) ==4988== by 0xCFA7569: bool re2::DFA::InlinedSearchLoop<false, false, true>(re2::DFA::SearchParams*) (dfa.cc:1425) ==4988== by 0xCFA6351: re2::DFA::Search(std::basic_string_view<char, std::char_traits<char> >, std::basic_string_view<char, std::char_traits<char> >, bool, bool, bool, bool*, char const**, re2::SparseSetT<void>*) (dfa.cc:1789) ==4988== by 0xCFA64CC: re2::Prog::SearchDFA(std::basic_string_view<char, std::char_traits<char> >, std::basic_string_view<char, std::char_traits<char> >, re2::Prog::Anchor, re2::Prog::MatchKind, std::basic_string_view<char, std::char_traits<char> >*, bool*, re2::SparseSetT<void>*) (dfa.cc:1886) ==4988== by 0xCF909C9: re2::RE2::Match(std::basic_string_view<char, std::char_traits<char> >, unsigned long, unsigned long, re2::RE2::Anchor, std::basic_string_view<char, std::char_traits<char> >*, int) const (re2.cc:838) ==4988== by 0xCF915E5: re2::RE2::DoMatch(std::basic_string_view<char, std::char_traits<char> >, re2::RE2::Anchor, unsigned long*, re2::RE2::Arg const* const*, int) const (re2.cc:935) ==4988== by 0xCF919E8: re2::RE2::FullMatchN(std::basic_string_view<char, std::char_traits<char> >, re2::RE2 const&, re2::RE2::Arg const* const*, int) (re2.cc:410) ==4988== by 0x81EF5D9: Apply<bool (*)(std::basic_string_view<char>, const re2::RE2&, const re2::RE2::Arg* const*, int), std::basic_string_view<char> > (re2.h:358) ==4988== by 0x81EF5D9: FullMatch<> (re2.h:410) ==4988== by 0x81EF5D9: StringMismatch (gpu_control_list.cc:109) ==4988== by 0x81EF5D9: gpu::(anonymous namespace)::StringMismatch(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const*) [clone .part.0] (gpu_control_list.cc:116) ==4988== by 0x81EF8EF: StringMismatch (gpu_control_list.cc:113) ==4988== by 0x81EF8EF: gpu::GpuControlList::GLStrings::Contains(gpu::GPUInfo const&) const (gpu_control_list.cc:328) ==4988== by 0x81F2802: gpu::GpuControlList::Conditions::Contains(gpu::GpuControlList::OsType, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, gpu::GPUInfo const&) const [clone .part.0] (gpu_control_list.cc:555) ==4988== ==4988== Use of uninitialised value of size 8 ==4988== at 0xCFA3B70: contains (sparse_set.h:227) ==4988== by 0xCFA3B70: re2::DFA::AddToQueue(re2::DFA::Workq*, int, unsigned int) (dfa.cc:867) ==4988== by 0xCFA4113: re2::DFA::RunWorkqOnByte(re2::DFA::Workq*, re2::DFA::Workq*, int, unsigned int, bool*) (dfa.cc:977) ==4988== by 0xCFA5738: re2::DFA::RunStateOnByte(re2::DFA::State*, int) (dfa.cc:1089) ==4988== by 0xCFA7569: RunStateOnByteUnlocked (dfa.cc:1016) ==4988== by 0xCFA7569: bool re2::DFA::InlinedSearchLoop<false, false, true>(re2::DFA::SearchParams*) (dfa.cc:1425) ==4988== by 0xCFA6351: re2::DFA::Search(std::basic_string_view<char, std::char_traits<char> >, std::basic_string_view<char, std::char_traits<char> >, bool, bool, bool, bool*, char const**, re2::SparseSetT<void>*) (dfa.cc:1789) ==4988== by 0xCFA64CC: re2::Prog::SearchDFA(std::basic_string_view<char, std::char_traits<char> >, std::basic_string_view<char, std::char_traits<char> >, re2::Prog::Anchor, re2::Prog::MatchKind, std::basic_string_view<char, std::char_traits<char> >*, bool*, re2::SparseSetT<void>*) (dfa.cc:1886) ==4988== by 0xCF909C9: re2::RE2::Match(std::basic_string_view<char, std::char_traits<char> >, unsigned long, unsigned long, re2::RE2::Anchor, std::basic_string_view<char, std::char_traits<char> >*, int) const (re2.cc:838) ==4988== by 0xCF915E5: re2::RE2::DoMatch(std::basic_string_view<char, std::char_traits<char> >, re2::RE2::Anchor, unsigned long*, re2::RE2::Arg const* const*, int) const (re2.cc:935) ==4988== by 0xCF919E8: re2::RE2::FullMatchN(std::basic_string_view<char, std::char_traits<char> >, re2::RE2 const&, re2::RE2::Arg const* const*, int) (re2.cc:410) ==4988== by 0x81EF5D9: Apply<bool (*)(std::basic_string_view<char>, const re2::RE2&, const re2::RE2::Arg* const*, int), std::basic_string_view<char> > (re2.h:358) ==4988== by 0x81EF5D9: FullMatch<> (re2.h:410) ==4988== by 0x81EF5D9: StringMismatch (gpu_control_list.cc:109) ==4988== by 0x81EF5D9: gpu::(anonymous namespace)::StringMismatch(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const*) [clone .part.0] (gpu_control_list.cc:116) ==4988== by 0x81EF8EF: StringMismatch (gpu_control_list.cc:113) ==4988== by 0x81EF8EF: gpu::GpuControlList::GLStrings::Contains(gpu::GPUInfo const&) const (gpu_control_list.cc:328) ==4988== by 0x81F2802: gpu::GpuControlList::Conditions::Contains(gpu::GpuControlList::OsType, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, gpu::GPUInfo const&) const [clone .part.0] (gpu_control_list.cc:555) ==4988== ==4988== Conditional jump or move depends on uninitialised value(s) ==4988== at 0xCFA3A2C: contains (sparse_set.h:227) ==4988== by 0xCFA3A2C: re2::DFA::AddToQueue(re2::DFA::Workq*, int, unsigned int) (dfa.cc:867) ==4988== by 0xCFA3E35: re2::DFA::StateToWorkq(re2::DFA::State*, re2::DFA::Workq*) (dfa.cc:828) ==4988== by 0xCFA56B6: re2::DFA::RunStateOnByte(re2::DFA::State*, int) (dfa.cc:1049) ==4988== by 0xCFA7569: RunStateOnByteUnlocked (dfa.cc:1016) ==4988== by 0xCFA7569: bool re2::DFA::InlinedSearchLoop<false, false, true>(re2::DFA::SearchParams*) (dfa.cc:1425) ==4988== by 0xCFA6351: re2::DFA::Search(std::basic_string_view<char, std::char_traits<char> >, std::basic_string_view<char, std::char_traits<char> >, bool, bool, bool, bool*, char const**, re2::SparseSetT<void>*) (dfa.cc:1789) ==4988== by 0xCFA64CC: re2::Prog::SearchDFA(std::basic_string_view<char, std::char_traits<char> >, std::basic_string_view<char, std::char_traits<char> >, re2::Prog::Anchor, re2::Prog::MatchKind, std::basic_string_view<char, std::char_traits<char> >*, bool*, re2::SparseSetT<void>*) (dfa.cc:1886) ==4988== by 0xCF909C9: re2::RE2::Match(std::basic_string_view<char, std::char_traits<char> >, unsigned long, unsigned long, re2::RE2::Anchor, std::basic_string_view<char, std::char_traits<char> >*, int) const (re2.cc:838) ==4988== by 0xCF915E5: re2::RE2::DoMatch(std::basic_string_view<char, std::char_traits<char> >, re2::RE2::Anchor, unsigned long*, re2::RE2::Arg const* const*, int) const (re2.cc:935) ==4988== by 0xCF919E8: re2::RE2::FullMatchN(std::basic_string_view<char, std::char_traits<char> >, re2::RE2 const&, re2::RE2::Arg const* const*, int) (re2.cc:410) ==4988== by 0x81EF5D9: Apply<bool (*)(std::basic_string_view<char>, const re2::RE2&, const re2::RE2::Arg* const*, int), std::basic_string_view<char> > (re2.h:358) ==4988== by 0x81EF5D9: FullMatch<> (re2.h:410) ==4988== by 0x81EF5D9: StringMismatch (gpu_control_list.cc:109) ==4988== by 0x81EF5D9: gpu::(anonymous namespace)::StringMismatch(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const*) [clone .part.0] (gpu_control_list.cc:116) ==4988== by 0x81EF8EF: StringMismatch (gpu_control_list.cc:113) ==4988== by 0x81EF8EF: gpu::GpuControlList::GLStrings::Contains(gpu::GPUInfo const&) const (gpu_control_list.cc:328) ==4988== by 0x81F2802: gpu::GpuControlList::Conditions::Contains(gpu::GpuControlList::OsType, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, gpu::GPUInfo const&) const [clone .part.0] (gpu_control_list.cc:555) ==4988== ==4988== Use of uninitialised value of size 8 ==4988== at 0xCFA3B70: contains (sparse_set.h:227) ==4988== by 0xCFA3B70: re2::DFA::AddToQueue(re2::DFA::Workq*, int, unsigned int) (dfa.cc:867) ==4988== by 0xCFA3E35: re2::DFA::StateToWorkq(re2::DFA::State*, re2::DFA::Workq*) (dfa.cc:828) ==4988== by 0xCFA56B6: re2::DFA::RunStateOnByte(re2::DFA::State*, int) (dfa.cc:1049) ==4988== by 0xCFA7569: RunStateOnByteUnlocked (dfa.cc:1016) ==4988== by 0xCFA7569: bool re2::DFA::InlinedSearchLoop<false, false, true>(re2::DFA::SearchParams*) (dfa.cc:1425) ==4988== by 0xCFA6351: re2::DFA::Search(std::basic_string_view<char, std::char_traits<char> >, std::basic_string_view<char, std::char_traits<char> >, bool, bool, bool, bool*, char const**, re2::SparseSetT<void>*) (dfa.cc:1789) ==4988== by 0xCFA64CC: re2::Prog::SearchDFA(std::basic_string_view<char, std::char_traits<char> >, std::basic_string_view<char, std::char_traits<char> >, re2::Prog::Anchor, re2::Prog::MatchKind, std::basic_string_view<char, std::char_traits<char> >*, bool*, re2::SparseSetT<void>*) (dfa.cc:1886) ==4988== by 0xCF909C9: re2::RE2::Match(std::basic_string_view<char, std::char_traits<char> >, unsigned long, unsigned long, re2::RE2::Anchor, std::basic_string_view<char, std::char_traits<char> >*, int) const (re2.cc:838) ==4988== by 0xCF915E5: re2::RE2::DoMatch(std::basic_string_view<char, std::char_traits<char> >, re2::RE2::Anchor, unsigned long*, re2::RE2::Arg const* const*, int) const (re2.cc:935) ==4988== by 0xCF919E8: re2::RE2::FullMatchN(std::basic_string_view<char, std::char_traits<char> >, re2::RE2 const&, re2::RE2::Arg const* const*, int) (re2.cc:410) ==4988== by 0x81EF5D9: Apply<bool (*)(std::basic_string_view<char>, const re2::RE2&, const re2::RE2::Arg* const*, int), std::basic_string_view<char> > (re2.h:358) ==4988== by 0x81EF5D9: FullMatch<> (re2.h:410) ==4988== by 0x81EF5D9: StringMismatch (gpu_control_list.cc:109) ==4988== by 0x81EF5D9: gpu::(anonymous namespace)::StringMismatch(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const*) [clone .part.0] (gpu_control_list.cc:116) ==4988== by 0x81EF8EF: StringMismatch (gpu_control_list.cc:113) ==4988== by 0x81EF8EF: gpu::GpuControlList::GLStrings::Contains(gpu::GPUInfo const&) const (gpu_control_list.cc:328) ==4988== by 0x81F2802: gpu::GpuControlList::Conditions::Contains(gpu::GpuControlList::OsType, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, gpu::GPUInfo const&) const [clone .part.0] (gpu_control_list.cc:555) ==4988==
-
I run your code. It looks like it is working, but with valgrind it complains a lot. So it is only luck that it look like working fine.
Error messages from your working code (also shorten):==7044== Syscall param writev(vector[0]) points to uninitialised byte(s) ==7044== at 0x5AFA89B: __writev (writev.c:26) ==7044== by 0x5AFA89B: writev (writev.c:24) ==7044== by 0x15DB6ACA: ??? (in /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0) ==7044== by 0x15DB6C4E: ??? (in /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0) ==7044== by 0x15DB6DA6: ??? (in /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0) ==7044== by 0x15DB6F94: ??? (in /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0) ==7044== by 0x15DB7E6D: xcb_wait_for_reply (in /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0) ==7044== by 0x170D078E: QXcbConnection::initializeScreensFromMonitor(xcb_screen_iterator_t*, int, QXcbScreen**, bool) (in /home/volker/Qt6.8/6.8.1/gcc_64/lib/libQt6XcbQpa.so.6.8.1) ==7044== by 0x170D1EDE: QXcbConnection::initializeScreens(bool) (in /home/volker/Qt6.8/6.8.1/gcc_64/lib/libQt6XcbQpa.so.6.8.1) ==7044== by 0x170C91A1: QXcbConnection::QXcbConnection(QXcbNativeInterface*, bool, unsigned int, char const*) (in /home/volker/Qt6.8/6.8.1/gcc_64/lib/libQt6XcbQpa.so.6.8.1) ==7044== by 0x170ED034: QXcbIntegration::QXcbIntegration(QList<QString> const&, int&, char**) (in /home/volker/Qt6.8/6.8.1/gcc_64/lib/libQt6XcbQpa.so.6.8.1) ==7044== by 0x570C522: ??? (in /home/volker/Qt6.8/6.8.1/gcc_64/plugins/platforms/libqxcb.so) ==7044== by 0x1282392E: ??? (in /home/volker/Qt6.8/6.8.1/gcc_64/lib/libQt6Gui.so.6.8.1) ==7044== Address 0x16747395 is 4,533 bytes inside a block of size 21,176 alloc'd ==7044== at 0x484D953: calloc (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so) ==7044== by 0x15DB9396: xcb_connect_to_fd (in /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0) ==7044== by 0x15DBA0D9: xcb_connect_to_display_with_auth_info (in /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0) ==7044== by 0x15AB33C9: _XConnectXCB (in /usr/lib/x86_64-linux-gnu/libX11.so.6.4.0) ==7044== by 0x15AA40FD: XOpenDisplay (in /usr/lib/x86_64-linux-gnu/libX11.so.6.4.0) ==7044== by 0x170CDE30: QXcbBasicConnection::QXcbBasicConnection(char const*) (in /home/volker/Qt6.8/6.8.1/gcc_64/lib/libQt6XcbQpa.so.6.8.1) ==7044== by 0x170C8F83: QXcbConnection::QXcbConnection(QXcbNativeInterface*, bool, unsigned int, char const*) (in /home/volker/Qt6.8/6.8.1/gcc_64/lib/libQt6XcbQpa.so.6.8.1) ==7044== by 0x170ED034: QXcbIntegration::QXcbIntegration(QList<QString> const&, int&, char**) (in /home/volker/Qt6.8/6.8.1/gcc_64/lib/libQt6XcbQpa.so.6.8.1) ==7044== by 0x570C522: ??? (in /home/volker/Qt6.8/6.8.1/gcc_64/plugins/platforms/libqxcb.so) ==7044== by 0x1282392E: ??? (in /home/volker/Qt6.8/6.8.1/gcc_64/lib/libQt6Gui.so.6.8.1) ==7044== by 0x128271B6: QGuiApplicationPrivate::createPlatformIntegration() (in /home/volker/Qt6.8/6.8.1/gcc_64/lib/libQt6Gui.so.6.8.1) ==7044== by 0x12827B87: QGuiApplicationPrivate::createEventDispatcher() (in /home/volker/Qt6.8/6.8.1/gcc_64/lib/libQt6Gui.so.6.8.1) ==7044== ==7104== ==7104== HEAP SUMMARY: ==7104== in use at exit: 6,397,982 bytes in 13,432 blocks ==7104== total heap usage: 27,129 allocs, 13,697 frees, 12,652,216 bytes allocated ==7104== ==7104== LEAK SUMMARY: ==7104== definitely lost: 0 bytes in 0 blocks ==7104== indirectly lost: 0 bytes in 0 blocks ==7104== possibly lost: 563,424 bytes in 142 blocks ==7104== still reachable: 5,834,558 bytes in 13,290 blocks ==7104== of which reachable via heuristic: ==7104== newarray : 3,344 bytes in 22 blocks ==7104== multipleinheritance: 2,080 bytes in 6 blocks ==7104== suppressed: 0 bytes in 0 blocks ==7104== Rerun with --leak-check=full to see details of leaked memory ==7104== ==7104== Use --track-origins=yes to see where uninitialised values come from ==7104== For lists of detected and suppressed errors, rerun with: -s ==7104== ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 0 from 0) ==7105== Warning: bad signal number 65 in sigaction() ==7105== Warning: invalid file descriptor 1024 in syscall close() ==7105== Warning: invalid file descriptor 1025 in syscall close() ==7105== Warning: invalid file descriptor 1026 in syscall close() ==7105== Warning: invalid file descriptor 1027 in syscall close() ==7105== Use --log-fd=<number> to select an alternative log fd. ==7105== Warning: invalid file descriptor 1028 in syscall close() ==7105== Warning: invalid file descriptor 1029 in syscall close() ==7106== Warning: bad signal number 65 in sigaction() ==7106== Warning: invalid file descriptor 1024 in syscall close() ==7106== Warning: invalid file descriptor 1025 in syscall close() ==7106== Warning: invalid file descriptor 1026 in syscall close() ==7106== Warning: invalid file descriptor 1027 in syscall close() ==7106== Use --log-fd=<number> to select an alternative log fd. ==7106== Warning: invalid file descriptor 1028 in syscall close() ==7106== Warning: invalid file descriptor 1029 in syscall close() ==7044== Thread 29 Chrome_InProcGpu: ==7044== Conditional jump or move depends on uninitialised value(s) ==7044== at 0xC25EF7E: contains (sparse_set.h:227) ==7044== by 0xC25EF7E: InsertInternal (sparse_set.h:156) ==7044== by 0xC25EF7E: InsertInternal (sparse_set.h:143) ==7044== by 0xC25EF7E: insert (sparse_set.h:133) ==7044== by 0xC25EF7E: AddToQueue (prog.cc:137) ==7044== by 0xC25EF7E: re2::Prog::Optimize() (prog.cc:240) ==7044== by 0xC24787A: re2::Compiler::Finish(re2::Regexp*) (compile.cc:1173) ==7044== by 0xC24A9EA: re2::Compiler::Compile(re2::Regexp*, bool, long) (compile.cc:1157) ==7044== by 0xC236EB5: re2::RE2::Init(std::basic_string_view<char, std::char_traits<char> >, re2::RE2::Options const&) (re2.cc:254) ==7044== by 0xC237598: re2::RE2::RE2(char const*) (re2.cc:141) ==7044== by 0x7496B14: gpu::(anonymous namespace)::ProcessANGLEGLRenderer(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*) [clone .constprop.0] (gpu_control_list.cc:126) ==7044== by 0x7497855: gpu::GpuControlList::GLStrings::Contains(gpu::GPUInfo const&) const (gpu_control_list.cc:323) ==7044== by 0x749A802: gpu::GpuControlList::Conditions::Contains(gpu::GpuControlList::OsType, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, gpu::GPUInfo const&) const [clone .part.0] (gpu_control_list.cc:555) ==7044== by 0x749AC9B: Contains (gpu_control_list.cc:574) ==7044== by 0x749AC9B: gpu::GpuControlList::Entry::Contains(gpu::GpuControlList::OsType, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, gpu::GPUInfo const&) const (gpu_control_list.cc:574) ==7044== by 0x749B0AA: gpu::GpuControlList::MakeDecision(gpu::GpuControlList::OsType, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, gpu::GPUInfo const&, unsigned int) (gpu_control_list.cc:702) ==7044== by 0x74ADB46: gpu::ComputeGpuFeatureInfo(gpu::GPUInfo const&, gpu::GpuPreferences const&, base::CommandLine*, bool*) (gpu_util.cc:595) ==7044== by 0xCCC1F7E: gpu::GpuInit::InitializeInProcess(base::CommandLine*, gpu::GpuPreferences const&) (gpu_init.cc:937) ==7044== ==7044== Use of uninitialised value of size 8 ==7044== at 0xC25EF80: contains (sparse_set.h:227) ==7044== by 0xC25EF80: InsertInternal (sparse_set.h:156) ==7044== by 0xC25EF80: InsertInternal (sparse_set.h:143) ==7044== by 0xC25EF80: insert (sparse_set.h:133) ==7044== by 0xC25EF80: AddToQueue (prog.cc:137) ==7044== by 0xC25EF80: re2::Prog::Optimize() (prog.cc:240) ==7044== by 0xC24787A: re2::Compiler::Finish(re2::Regexp*) (compile.cc:1173) ==7044== by 0xC24A9EA: re2::Compiler::Compile(re2::Regexp*, bool, long) (compile.cc:1157) ==7044== by 0xC236EB5: re2::RE2::Init(std::basic_string_view<char, std::char_traits<char> >, re2::RE2::Options const&) (re2.cc:254) ==7044== by 0xC237598: re2::RE2::RE2(char const*) (re2.cc:141) ==7044== by 0x7496B14: gpu::(anonymous namespace)::ProcessANGLEGLRenderer(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*) [clone .constprop.0] (gpu_control_list.cc:126) ==7044== by 0x7497855: gpu::GpuControlList::GLStrings::Contains(gpu::GPUInfo const&) const (gpu_control_list.cc:323) ==7044== by 0x749A802: gpu::GpuControlList::Conditions::Contains(gpu::GpuControlList::OsType, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, gpu::GPUInfo const&) const [clone .part.0] (gpu_control_list.cc:555) ==7044== by 0x749AC9B: Contains (gpu_control_list.cc:574) ==7044== by 0x749AC9B: gpu::GpuControlList::Entry::Contains(gpu::GpuControlList::OsType, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, gpu::GPUInfo const&) const (gpu_control_list.cc:574) ==7044== by 0x749B0AA: gpu::GpuControlList::MakeDecision(gpu::GpuControlList::OsType, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, gpu::GPUInfo const&, unsigned int) (gpu_control_list.cc:702) ==7044== by 0x74ADB46: gpu::ComputeGpuFeatureInfo(gpu::GPUInfo const&, gpu::GpuPreferences const&, base::CommandLine*, bool*) (gpu_util.cc:595) ==7044== by 0xCCC1F7E: gpu::GpuInit::InitializeInProcess(base::CommandLine*, gpu::GpuPreferences const&) (gpu_init.cc:937) ==7044== ... ==7044== ==7044== Invalid read of size 4 ==7044== at 0x5A72A64: __pthread_mutex_unlock_usercnt (pthread_mutex_unlock.c:51) ==7044== by 0x5A72A64: pthread_mutex_unlock@@GLIBC_2.2.5 (pthread_mutex_unlock.c:368) ==7044== by 0x18278B0C: ??? (in /usr/lib/x86_64-linux-gnu/libGLX_mesa.so.0.0.0) ==7044== by 0x183B05D9: ??? (in /usr/lib/x86_64-linux-gnu/dri/radeonsi_dri.so) ==7044== by 0x18465114: ??? (in /usr/lib/x86_64-linux-gnu/dri/radeonsi_dri.so) ==7044== by 0x184651AB: ??? (in /usr/lib/x86_64-linux-gnu/dri/radeonsi_dri.so) ==7044== by 0xAF941E1: syncAllOutstandingGpuWork (GrDirectContext.cpp:546) ==7044== by 0xAF941E1: syncAllOutstandingGpuWork (GrDirectContext.cpp:544) ==7044== by 0xAF941E1: GrDirectContext::~GrDirectContext() (GrDirectContext.cpp:112) ==7044== by 0xAF94201: GrDirectContext::~GrDirectContext() (GrDirectContext.cpp:123) ==7044== by 0xCC598DA: internal_dispose (SkRefCnt.h:99) ==7044== by 0xCC598DA: unref (SkRefCnt.h:78) ==7044== by 0xCC598DA: unref (SkRefCnt.h:72) ==7044== by 0xCC598DA: SkSafeUnref<GrDirectContext> (SkRefCnt.h:151) ==7044== by 0xCC598DA: reset (SkRefCnt.h:316) ==7044== by 0xCC598DA: gpu::SharedContextState::~SharedContextState() (shared_context_state.cc:275) ==7044== by 0xCC59921: gpu::SharedContextState::~SharedContextState() (shared_context_state.cc:291) ==7044== by 0xCCBE051: DeleteInternal<gpu::SharedContextState> (ref_counted.h:366) ==7044== by 0xCCBE051: Destruct (ref_counted.h:330) ==7044== by 0xCCBE051: Release (ref_counted.h:355) ==7044== by 0xCCBE051: Release (ref_counted.h:348) ==7044== by 0xCCBE051: Release (scoped_refptr.h:386) ==7044== by 0xCCBE051: ~scoped_refptr (scoped_refptr.h:273) ==7044== by 0xCCBE051: gpu::GpuChannelManager::~GpuChannelManager() (gpu_channel_manager.cc:393) ==7044== by 0xCCBE0E1: gpu::GpuChannelManager::~GpuChannelManager() (gpu_channel_manager.cc:414) ==7044== by 0xCF7A7AF: operator() (unique_ptr.h:85) ==7044== by 0xCF7A7AF: reset (unique_ptr.h:182) ==7044== by 0xCF7A7AF: reset (unique_ptr.h:456) ==7044== by 0xCF7A7AF: viz::GpuServiceImpl::~GpuServiceImpl() (gpu_service_impl.cc:474) ==7044== Address 0x1689fd48 is 328 bytes inside a block of size 424 free'd ==7044== at 0x484988F: free (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so) ==7044== by 0x18257F04: ??? (in /usr/lib/x86_64-linux-gnu/libGLX_mesa.so.0.0.0) ==7044== by 0x69201FB: gl::GLSurfaceGLXQt::Destroy() (gl_surface_glx_qt.cpp:134) ==7044== by 0xCCBDE0E: gpu::GpuChannelManager::~GpuChannelManager() (gpu_channel_manager.cc:411) ==7044== by 0xCCBE0E1: gpu::GpuChannelManager::~GpuChannelManager() (gpu_channel_manager.cc:414) ==7044== by 0xCF7A7AF: operator() (unique_ptr.h:85) ==7044== by 0xCF7A7AF: reset (unique_ptr.h:182) ==7044== by 0xCF7A7AF: reset (unique_ptr.h:456) ==7044== by 0xCF7A7AF: viz::GpuServiceImpl::~GpuServiceImpl() (gpu_service_impl.cc:474) ==7044== by 0xCF7ADD1: viz::GpuServiceImpl::~GpuServiceImpl() (gpu_service_impl.cc:512) ==7044== by 0x9EEF802: operator() (unique_ptr.h:85) ==7044== by 0x9EEF802: ~unique_ptr (unique_ptr.h:361) ==7044== by 0x9EEF802: viz::VizMainImpl::~VizMainImpl() (viz_main_impl.cc:152) ==7044== by 0xCF4B9E0: content::GpuChildThread::~GpuChildThread() (gpu_child_thread.cc:143) ==7044== by 0xCF4BA31: content::GpuChildThread::~GpuChildThread() (gpu_child_thread.cc:143) ==7044== by 0xCDA8E21: operator() (unique_ptr.h:85) ==7044== by 0xCDA8E21: reset (unique_ptr.h:182) ==7044== by 0xCDA8E21: reset (unique_ptr.h:456) ==7044== by 0xCDA8E21: content::ChildProcess::~ChildProcess() (child_process.cc:158) ==7044== by 0xCDA8E51: content::ChildProcess::~ChildProcess() (child_process.cc:180) ==7044== Block was alloc'd at ==7044== at 0x484D953: calloc (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so) ==7044== by 0x18264A9B: ??? (in /usr/lib/x86_64-linux-gnu/libGLX_mesa.so.0.0.0) ==7044== by 0x18257F89: ??? (in /usr/lib/x86_64-linux-gnu/libGLX_mesa.so.0.0.0) ==7044== by 0x182581EB: ??? (in /usr/lib/x86_64-linux-gnu/libGLX_mesa.so.0.0.0) ==7044== by 0x1613C80C: glXCreatePbuffer (in /usr/lib/x86_64-linux-gnu/libGLX.so.0.0.0) ==7044== by 0x6920EFB: gl::GLSurfaceGLXQt::Initialize(gl::GLSurfaceFormat) (gl_surface_glx_qt.cpp:120) ==7044== by 0x69200DF: ui::GLOzoneGLXQt::CreateOffscreenGLSurface(gl::GLDisplay*, gfx::Size const&) (gl_ozone_glx_qt.cpp:105) ==7044== by 0xC264259: gl::init::CreateOffscreenGLSurface(gl::GLDisplay*, gfx::Size const&) (gl_factory_ozone.cc:94) ==7044== by 0xCCC2070: gpu::GpuInit::InitializeInProcess(base::CommandLine*, gpu::GpuPreferences const&) (gpu_init.cc:1021) ==7044== by 0xCF4B632: content::InProcessGpuThread::Init() (in_process_gpu_thread.cc:71) ==7044== by 0xAB8F7E4: base::Thread::ThreadMain() (thread.cc:398) ==7044== by 0xABA306E: base::(anonymous namespace)::ThreadFunc(void*) (platform_thread_posix.cc:103) ==7044== ==7044== Invalid read of size 4 ==7044== at 0x5A72AD5: __pthread_mutex_unlock_usercnt (pthread_mutex_unlock.c:55) ==7044== by 0x5A72AD5: pthread_mutex_unlock@@GLIBC_2.2.5 (pthread_mutex_unlock.c:368) ==7044== by 0x18278B0C: ??? (in /usr/lib/x86_64-linux-gnu/libGLX_mesa.so.0.0.0) ==7044== by 0x183B05D9: ??? (in /usr/lib/x86_64-linux-gnu/dri/radeonsi_dri.so) ==7044== by 0x18465114: ??? (in /usr/lib/x86_64-linux-gnu/dri/radeonsi_dri.so) ==7044== by 0x184651AB: ??? (in /usr/lib/x86_64-linux-gnu/dri/radeonsi_dri.so) ==7044== by 0xAF941E1: syncAllOutstandingGpuWork (GrDirectContext.cpp:546) ==7044== by 0xAF941E1: syncAllOutstandingGpuWork (GrDirectContext.cpp:544) ==7044== by 0xAF941E1: GrDirectContext::~GrDirectContext() (GrDirectContext.cpp:112) ==7044== by 0xAF94201: GrDirectContext::~GrDirectContext() (GrDirectContext.cpp:123) ==7044== by 0xCC598DA: internal_dispose (SkRefCnt.h:99) ==7044== by 0xCC598DA: unref (SkRefCnt.h:78) ==7044== by 0xCC598DA: unref (SkRefCnt.h:72) ==7044== by 0xCC598DA: SkSafeUnref<GrDirectContext> (SkRefCnt.h:151) ==7044== by 0xCC598DA: reset (SkRefCnt.h:316) ==7044== by 0xCC598DA: gpu::SharedContextState::~SharedContextState() (shared_context_state.cc:275) ==7044== by 0xCC59921: gpu::SharedContextState::~SharedContextState() (shared_context_state.cc:291) ==7044== by 0xCCBE051: DeleteInternal<gpu::SharedContextState> (ref_counted.h:366) ==7044== by 0xCCBE051: Destruct (ref_counted.h:330) ==7044== by 0xCCBE051: Release (ref_counted.h:355) ==7044== by 0xCCBE051: Release (ref_counted.h:348) ==7044== by 0xCCBE051: Release (scoped_refptr.h:386) ==7044== by 0xCCBE051: ~scoped_refptr (scoped_refptr.h:273) ==7044== by 0xCCBE051: gpu::GpuChannelManager::~GpuChannelManager() (gpu_channel_manager.cc:393) ==7044== by 0xCCBE0E1: gpu::GpuChannelManager::~GpuChannelManager() (gpu_channel_manager.cc:414) ==7044== by 0xCF7A7AF: operator() (unique_ptr.h:85) ==7044== by 0xCF7A7AF: reset (unique_ptr.h:182) ==7044== by 0xCF7A7AF: reset (unique_ptr.h:456) ==7044== by 0xCF7A7AF: viz::GpuServiceImpl::~GpuServiceImpl() (gpu_service_impl.cc:474) ==7044== Address 0x1689fd48 is 328 bytes inside a block of size 424 free'd ==7044== at 0x484988F: free (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so) ==7044== by 0x18257F04: ??? (in /usr/lib/x86_64-linux-gnu/libGLX_mesa.so.0.0.0) ==7044== by 0x69201FB: gl::GLSurfaceGLXQt::Destroy() (gl_surface_glx_qt.cpp:134) ==7044== by 0xCCBDE0E: gpu::GpuChannelManager::~GpuChannelManager() (gpu_channel_manager.cc:411) ==7044== by 0xCCBE0E1: gpu::GpuChannelManager::~GpuChannelManager() (gpu_channel_manager.cc:414) ==7044== by 0xCF7A7AF: operator() (unique_ptr.h:85) ==7044== by 0xCF7A7AF: reset (unique_ptr.h:182) ==7044== by 0xCF7A7AF: reset (unique_ptr.h:456) ==7044== by 0xCF7A7AF: viz::GpuServiceImpl::~GpuServiceImpl() (gpu_service_impl.cc:474) ==7044== by 0xCF7ADD1: viz::GpuServiceImpl::~GpuServiceImpl() (gpu_service_impl.cc:512) ==7044== by 0x9EEF802: operator() (unique_ptr.h:85) ==7044== by 0x9EEF802: ~unique_ptr (unique_ptr.h:361) ==7044== by 0x9EEF802: viz::VizMainImpl::~VizMainImpl() (viz_main_impl.cc:152) ==7044== by 0xCF4B9E0: content::GpuChildThread::~GpuChildThread() (gpu_child_thread.cc:143) ==7044== by 0xCF4BA31: content::GpuChildThread::~GpuChildThread() (gpu_child_thread.cc:143) ==7044== by 0xCDA8E21: operator() (unique_ptr.h:85) ==7044== by 0xCDA8E21: reset (unique_ptr.h:182) ==7044== by 0xCDA8E21: reset (unique_ptr.h:456) ==7044== by 0xCDA8E21: content::ChildProcess::~ChildProcess() (child_process.cc:158) ==7044== by 0xCDA8E51: content::ChildProcess::~ChildProcess() (child_process.cc:180) ==7044== Block was alloc'd at ==7044== at 0x484D953: calloc (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so) ==7044== by 0x18264A9B: ??? (in /usr/lib/x86_64-linux-gnu/libGLX_mesa.so.0.0.0) ==7044== by 0x18257F89: ??? (in /usr/lib/x86_64-linux-gnu/libGLX_mesa.so.0.0.0) ==7044== by 0x182581EB: ??? (in /usr/lib/x86_64-linux-gnu/libGLX_mesa.so.0.0.0) ==7044== by 0x1613C80C: glXCreatePbuffer (in /usr/lib/x86_64-linux-gnu/libGLX.so.0.0.0) ==7044== by 0x6920EFB: gl::GLSurfaceGLXQt::Initialize(gl::GLSurfaceFormat) (gl_surface_glx_qt.cpp:120) ==7044== by 0x69200DF: ui::GLOzoneGLXQt::CreateOffscreenGLSurface(gl::GLDisplay*, gfx::Size const&) (gl_ozone_glx_qt.cpp:105) ==7044== by 0xC264259: gl::init::CreateOffscreenGLSurface(gl::GLDisplay*, gfx::Size const&) (gl_factory_ozone.cc:94) ==7044== by 0xCCC2070: gpu::GpuInit::InitializeInProcess(base::CommandLine*, gpu::GpuPreferences const&) (gpu_init.cc:1021) ==7044== by 0xCF4B632: content::InProcessGpuThread::Init() (in_process_gpu_thread.cc:71) ==7044== by 0xAB8F7E4: base::Thread::ThreadMain() (thread.cc:398) ==7044== by 0xABA306E: base::(anonymous namespace)::ThreadFunc(void*) (platform_thread_posix.cc:103) ==7044== ==7044== ==7044== HEAP SUMMARY: ==7044== in use at exit: 6,179,618 bytes in 30,336 blocks ==7044== total heap usage: 345,912 allocs, 315,576 frees, 79,577,197 bytes allocated ==7044== ==7044== LEAK SUMMARY: ==7044== definitely lost: 12,264 bytes in 48 blocks ==7044== indirectly lost: 432,978 bytes in 2,699 blocks ==7044== possibly lost: 2,057,478 bytes in 440 blocks ==7044== still reachable: 3,676,898 bytes in 27,149 blocks ==7044== of which reachable via heuristic: ==7044== length64 : 10,776 bytes in 276 blocks ==7044== newarray : 40,104 bytes in 86 blocks ==7044== multipleinheritance: 6,544 bytes in 8 blocks ==7044== suppressed: 0 bytes in 0 blocks ==7044== Rerun with --leak-check=full to see details of leaked memory ==7044== ==7044== Use --track-origins=yes to see where uninitialised values come from ==7044== For lists of detected and suppressed errors, rerun with: -s ==7044== ERROR SUMMARY: 64345 errors from 53 contexts (suppressed: 0 from 0)
-
@Volker75 said in Looks like the SIGNAL loadFinished(bool) is not emitted anymore with Qt 6.8.1:
run your code. It looks like it is working,
So we agree that the statement that, "the SIGNAL loadFinished(bool) is not emitted anymore with Qt 6.8.1," is false.
The reports from valgrind have nothing to do with the problem.
-
Ok. Sorry. ChrisW67. Thank you for your help. It helped us to locate the bug a bit closer. Yes. That is true. My header is wrong. My code is fine and also your code is fine. My and your applications (binaries/executables) are wrong, because there is at least one bug in Qt or in libxcb.so.1.1.0.
Sadly that is out of my scope and skill level. Can anyone report this well and hunt it down?
I bet that this or a very similar bug is also the reason for the other bug I reported some time ago:
https://forum.qt.io/topic/160116/qtwebenginecore-dll-sometimes-not-found?_=1736677825304 -
@Volker75 said in Looks like the SIGNAL loadFinished(bool) is not emitted anymore with Qt 6.8.1:
My header is wrong.
Don't know what this means.
because there is at least one bug in Qt or in libxcb.so.1.1.0.
Don't know what you are referring to. Don't think anyone can act on this. My understanding is that you reported signal not working, now you acknowledge it works, so don't know what bug you are referring to.
Can anyone report this well and hunt it down?
I don't see what others have to hunt down which is wrong, or why they would do so.
https://forum.qt.io/topic/160116/qtwebenginecore-dll-sometimes-not-found?_=1736677825304
I don't see why, whatever that turned out to be about, it is particularly related to anything else here. Especially if it is "intermittent".
To report a bug you need to have a small, complete piece of code which illustrates a problem. I think two other people have reported something like @ChrisW67's code seems to run fine, and you may be in that situation now, I don't know. I am not sure anyone will be interested in reports from valgrind necessarily counting as bugs, only if results in bad behaviour,
-
"My header" = not in the code. Header of this topic/post in the forum.
I am refereeing to the valgrind logfile that i added. Did you ever used valgrind? It is a very nice tool and you can hunt down bugs in your code very well. It shows you where the bug is located.
If you watch the logfile, then you can see where the bug is located. Sadly valgrind refer to files that are out of my scope. The bug is not in my source. The bug is in functions that I call only.As far as i can see and understand it, there is a wrong pointer (Quote from the log file: "vector[0]) points to uninitialized byte(s)".). It points to a wrong place and that is why the function doesn't do what it should do. It was only luck that is was running fine. Similar to the other bug that I report. It is the same software and the same code and there it crashes with Windows 10 Citrix and Qt 6.7.2 even the exact code is running fine on 10 other computers with Qt 6.7.2 (Windows, Linux, Windows 10 local, MacOS, ...). So there it was only just luck.
-
@Volker75
Yes, I have used valgrind many times. Yes, it can be a useful tool. Yes, it can always return false positives. No, I don't think anyone particularly will look into this, especially withQWebEngine
, unless some behaviour is demonstrably wrong. Which as I understand it you do not have. You still say "why the function doesn't do what it should do" but I haven't seen a consistent report of something going wrong, else the other guys would have said so, valgrind report apart. Maybe I'm mistaken and someone else will look into this, but I wouldn't hold your breath. -
In my source it crashes every time under Linux 6.8.1!
Sadly it is large and so you want to have a smaller file of course, but then he bug doesn't occur.
It is like if I use a Qt function like this:
qt_foo(myCode.size());And in this Qt function is source like this: (This is not the real source. Only a bad example):
a[10];
...
for(int i=0; i<x; i++)
sum+=a[i];
}and you tell me: "Ohh... Wait: Your example code is too large. You must do a smaller sample code and prove that it doesn't work. Nobody will check such a large example. Your sample code is only allowed to have a small example that doesn't work."
My source code is sadly large. I can't make my source code smaller. If I make my source code smaller, then it is just higher luck that the bug doesn't occur. -
@Volker75
This forum is a user from, for users of Qt just like yourself. It is not a The Qt Company forum. If you want to report a bug that is done at TQtC https://bugreports.qt.io/. I think you will find they want a small program which reproduces bad behaviour. I don't know that they will look at your larger existing application, but up to you.In my source it crashes every time under Linux 6.8.1!
I agree that is problematic. You might supply them with the stack trace on crash, which you have not shown us.
I pay 50€ to the guy that fix this bug.
LOL :)
-
-
Maybe am am not skilled enough with gdb.
I used gdb and used "r". And tried to get the crash.
Then I get this error:Thread 1 "Test" received signal SIGSEGV, Segmentation fault. Downloading source file /home/qt/work/qt/qtwebengine/src/webenginewidgets/api/qwebengineview.cpp QWebEngineView::page (this=0x555556a22710) at /home/qt/work/qt/qtwebengine/src/webenginewidgets/api/qwebengineview.cpp:1058 Warnung: 1058 /home/qt/work/qt/qtwebengine/src/webenginewidgets/api/qwebengineview.cpp: Datei oder Verzeichnis nicht gefunden
It is translated: File or Folder not found
So similar to the bug that i descriped in the other topic that i linked a few posts ago.Please give me more advice what I can do to locate the bug.
-
Sorry, I forgot the bt stuff. I hope anyone understand it:
[Thread 0x7fff7cc006c0 (LWP 13329) exited] Thread 1 "Test" received signal SIGSEGV, Segmentation fault. Downloading source file /home/qt/work/qt/qtwebengine/src/webenginewidgets/api/qwebengineview.cpp QWebEngineView::page (this=0x555556a22710) at /home/qt/work/qt/qtwebengine/src/webenginewidgets/api/qwebengineview.cpp:1058 Warnung: 1058 /home/qt/work/qt/qtwebengine/src/webenginewidgets/api/qwebengineview.cpp: Datei oder Verzeichnis nicht gefunden (gdb) bt #0 QWebEngineView::page (this=0x555556a22710) at /home/qt/work/qt/qtwebengine/src/webenginewidgets/api/qwebengineview.cpp:1058 #1 0x00007ffff7f50f26 in QWebEngineView::setHtml (this=<optimized out>, html=<Fehler beim Lesen der Variable: Cannot access memory at address 0x7fffffffc038>, baseUrl=...) at /home/qt/work/qt/qtwebengine/src/webenginewidgets/api/qwebengineview.cpp:1102 #2 0x0000555555ae0436 in operator() (__closure=0x555556a59390) at src/timetableprintform.cpp:58 #3 0x0000555555ae0ced in operator() (__closure=0x7fffffffc120) at ../../../Qt6.8/6.8.1/gcc_64/include/QtCore/qobjectdefs_impl.h:141 #4 0x0000555555ae0d94 in QtPrivate::FunctorCallBase::call_internal<void, QtPrivate::FunctorCall<QtPrivate::IndexesList<>, QtPrivate::List<>, void, TimetablePrintForm::TimetablePrintForm(QWidget*)::<lambda()> >::call(TimetablePrintForm::TimetablePrintForm(QWidget*)::<lambda()>&, void**)::<lambda()> >(void **, struct {...} &&) (args=0x7fffffffc258, fn=...) at ../../../Qt6.8/6.8.1/gcc_64/include/QtCore/qobjectdefs_impl.h:65 Backtrace stopped: Cannot access memory at address 0x7fffffffc108