Looks like the SIGNAL loadFinished(bool) is not emitted anymore with Qt 6.8.1
-
I added singals now for loadStarted() and loadProgress() and I wrote functions that print qDebug informations.
With Qt 6.7.2 I can see both!
With Qt 6.8.1 I can't see it. So it also look like the signals for loadStarted and loadProgress are not emitted!
hmm...
I don't understand the problem.
I will try to get rid of the SIGNAL and SLOTS makros and I will try to use a pointer for the viewPreview. But I can't do that now. I must do some other stuff now. I will report later if I was successful or not. -
I just noticed an other thing. Not only the signals are not emitted anymore, I can also see a lot of valgrind warnings if i start my application. But if I start my application, then it is not my fault, since the webview is not in my main dialog. It is only a a sub dialog that i didn't started at that time!
I compiled with debug information -g and i can see that the problem is not in my source. The problem is in the qt webengine source as soon as the Qt library is linked the first time.
There are a lot of warnings like this: Even with this warnings it is working with 6.7.2. But it failed with 6.8.1. So it looks like it is the bug in Qt.Thread 28 Chrome_InProcGpu: ==9401== Conditional jump or move depends on uninitialised value(s) ==9401== at 0xCA6EA0E: ??? (in /home/volker/Qt/6.7.2/gcc_64/lib/libQt6WebEngineCore.so.6.7.2) ==9401== by 0xCA56BCA: ??? (in /home/volker/Qt/6.7.2/gcc_64/lib/libQt6WebEngineCore.so.6.7.2) ==9401== by 0xCA59FFA: ??? (in /home/volker/Qt/6.7.2/gcc_64/lib/libQt6WebEngineCore.so.6.7.2) ==9401== by 0xCA41FB5: ??? (in /home/volker/Qt/6.7.2/gcc_64/lib/libQt6WebEngineCore.so.6.7.2) ==9401== by 0xCA42698: ??? (in /home/volker/Qt/6.7.2/gcc_64/lib/libQt6WebEngineCore.so.6.7.2) ==9401== by 0x80318F4: ??? (in /home/volker/Qt/6.7.2/gcc_64/lib/libQt6WebEngineCore.so.6.7.2) ==9401== by 0x8032635: ??? (in /home/volker/Qt/6.7.2/gcc_64/lib/libQt6WebEngineCore.so.6.7.2) ==9401== by 0x8035622: ??? (in /home/volker/Qt/6.7.2/gcc_64/lib/libQt6WebEngineCore.so.6.7.2) ==9401== by 0x8035A9B: ??? (in /home/volker/Qt/6.7.2/gcc_64/lib/libQt6WebEngineCore.so.6.7.2) ==9401== by 0x8035EBA: ??? (in /home/volker/Qt/6.7.2/gcc_64/lib/libQt6WebEngineCore.so.6.7.2) ==9401== by 0x80494CA: ??? (in /home/volker/Qt/6.7.2/gcc_64/lib/libQt6WebEngineCore.so.6.7.2) ==9401== by 0xD4F15D2: ??? (in /home/volker/Qt/6.7.2/gcc_64/lib/libQt6WebEngineCore.so.6.7.2)
-
Ok. Now I done a copy of my project and copy and paste the code above in my project.
I was forced to modify it a bit, because I got errors of unkown widget.h and unknown m_elapsedTimer.My source now looks very very similar to the above one:
TimetablePrintForm::TimetablePrintForm(QWidget *parent): QDialog(parent){ QVBoxLayout *layout = new QVBoxLayout(this); QWebEngineView *view = new QWebEngineView(this); connect(view, &QWebEngineView::loadFinished, this, &TimetablePrintForm::loadFinished); layout->addWidget(view); QTimer::singleShot(0, [=](){ view->setHtml("<html><head><title>Initial page</title></head><body><p>Initial content</p></body></html>"); } ); QTimer::singleShot(3000, [=](){ view->setHtml("<html><head><title>Three seconds page</title></head><body><p>New content</p></body></html>"); } ); } TimetablePrintForm::~TimetablePrintForm() {} void TimetablePrintForm::loadFinished(bool ok) { qDebug() << Q_FUNC_INFO << ok; qDebug("test"); }
Result:
It is working fine with Qt 6.7.2 and it crashes with Qt 6.8.1.
I got:Speicherzugriffsfehler (Speicherabzug geschrieben)
(That is German for "segmentation fault")
I compiled with -g and I didn't get a report about the location in my source. It look like it a segmentation fault in the qtwebengine. (Later added: or maybe in the GPU? see valgrind error log below) -
Additional Information:
I also runned it with Valgrind. Since with valgrind my computer is very slow I was able to see that a dialog opens and closes 2 times for a very short time and then valgrind just do nothing. I can't press anything in my application. It looks like it waiting only.
I was forced to terminate the app.
Last error lines are:==6234== Use of uninitialised value of size 8 ==6234== at 0xCFA3B70: contains (sparse_set.h:227) ==6234== by 0xCFA3B70: re2::DFA::AddToQueue(re2::DFA::Workq*, int, unsigned int) (dfa.cc:867) ==6234== by 0xCFA3E35: re2::DFA::StateToWorkq(re2::DFA::State*, re2::DFA::Workq*) (dfa.cc:828) ==6234== by 0xCFA56B6: re2::DFA::RunStateOnByte(re2::DFA::State*, int) (dfa.cc:1049) ==6234== by 0xCFA7569: RunStateOnByteUnlocked (dfa.cc:1016) ==6234== by 0xCFA7569: bool re2::DFA::InlinedSearchLoop<false, false, true>(re2::DFA::SearchParams*) (dfa.cc:1425) ==6234== 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) ==6234== 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) ==6234== 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) ==6234== 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) ==6234== 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) ==6234== 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) ==6234== by 0x81EF5D9: FullMatch<> (re2.h:410) ==6234== by 0x81EF5D9: StringMismatch (gpu_control_list.cc:109) ==6234== 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) ==6234== by 0x81EF8EF: StringMismatch (gpu_control_list.cc:113) ==6234== by 0x81EF8EF: gpu::GpuControlList::GLStrings::Contains(gpu::GPUInfo const&) const (gpu_control_list.cc:328) ==6234== 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) ==6234== 15 ^C==6234== ==6234== Process terminating with default action of signal 2 (SIGINT) ==6234== at 0x68C74CD: poll (poll.c:29) ==6234== by 0x1356D66D: ??? (in /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0.8000.0) ==6234== by 0x1350DA52: g_main_context_iteration (in /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0.8000.0) ==6234== by 0x625F91D: QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (in /home/volker/Qt6.8/6.8.1/gcc_64/lib/libQt6Core.so.6.8.1) ==6234== by 0x5F92FE1: QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (in /home/volker/Qt6.8/6.8.1/gcc_64/lib/libQt6Core.so.6.8.1) ==6234== by 0x5F8F165: QCoreApplication::exec() (in /home/volker/Qt6.8/6.8.1/gcc_64/lib/libQt6Core.so.6.8.1) ==6234== ==6234== HEAP SUMMARY: ==6234== in use at exit: 25,318,117 bytes in 124,927 blocks ==6234== total heap usage: 931,939 allocs, 807,012 frees, 116,090,981 bytes allocated ==6234== ==6234== LEAK SUMMARY: ==6234== definitely lost: 6,656 bytes in 26 blocks ==6234== indirectly lost: 2,183 bytes in 102 blocks ==6234== possibly lost: 398,168 bytes in 1,186 blocks ==6234== still reachable: 24,911,110 bytes in 123,613 blocks ==6234== of which reachable via heuristic: ==6234== length64 : 203,616 bytes in 1,308 blocks ==6234== newarray : 860,704 bytes in 135 blocks ==6234== multipleinheritance: 16,256 bytes in 56 blocks ==6234== suppressed: 0 bytes in 0 blocks
-
@Volker75 said in Looks like the SIGNAL loadFinished(bool) is not emitted anymore with Qt 6.8.1:
I can't compile his code. Can you give me the .pro file, so that i can compile it?
Here is a version as a single file with PRO file:
# Automatically generated by qmake (3.1) Sun Jan 12 12:12:14 2025 ###################################################################### TEMPLATE = app TARGET = test INCLUDEPATH += . QT += widgets webenginewidgets # You can make your code fail to compile if you use deprecated APIs. # In order to do so, uncomment the following line. # Please consult the documentation of the deprecated API in order to know # how to port your code away from it. # You can also select to disable deprecated APIs only up to a certain version of Qt. #DEFINES += QT_DISABLE_DEPRECATED_UP_TO=0x060000 # disables all APIs deprecated in Qt 6.0.0 and earlier # Input SOURCES += main.cpp
and
main.cpp
:#include <QApplication> #include <QWebEngineView> #include <QDebug> #include <QTimer> #include <QElapsedTimer> class Widget: public QWebEngineView { Q_OBJECT public: explicit Widget(QWidget *parent = nullptr); ~Widget(); private slots: void htmlLoadFinished(bool ok); private: QElapsedTimer m_elapsedTimer; }; Widget::Widget(QWidget *parent): QWebEngineView(parent) { connect(this, &QWebEngineView::loadFinished, this, &Widget::htmlLoadFinished); // or this // connect(this, SIGNAL(loadFinished(bool)), this, SLOT(htmlLoadFinished(bool))); QTimer::singleShot(0, [=](){ this->setHtml("<html><head><title>Initial page</title></head><body><p>Initial content</p></body></html>"); } ); QTimer::singleShot(3000, [=](){ this->setHtml("<html><head><title>Three seconds page</title></head><body><p>New content</p></body></html>"); } ); m_elapsedTimer.start(); } Widget::~Widget() {} void Widget::htmlLoadFinished(bool ok) { qDebug() << m_elapsedTimer.elapsed() << Q_FUNC_INFO << ok; } int main(int argc, char **argv) { QApplication app(argc, argv); Widget widget; widget.resize(800, 600); widget.show(); return app.exec(); } #include "main.moc"
-
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.
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