Details
-
Bug
-
Resolution: Fixed
-
P1: Critical
-
None
-
5.12.10
-
None
-
Microsoft Windows 10 Home
Description
I've seen the QWebEngineProfile() no-arguments constructor crash on several Windows 10 machines using Qt 5.12.10. The call stack is:
Qt5WebEngineCore.dll!base::Value::GetAsDictionary(base::DictionaryValue * * out_value) Line 520
Qt5WebEngineCore.dll!catalog::RetrieveRequiredFiles(const base::Value & manifest_value) Line 44
Qt5WebEngineCore.dll!content::`anonymous namespace'::BuiltinManifestProvider::AddServiceManifest(base::BasicStringPiece<std::basic_string<char,std::char_traits<char>,std::allocator<char> > > name, int resource_id) Line 228
Qt5WebEngineCore.dll!content::ServiceManagerContext::ServiceManagerContext(scoped_refptr<base::SingleThreadTaskRunner> service_manager_thread_task_runner) Line 470
Qt5WebEngineCore.dll!content::BrowserMainLoop::InitializeMojo() Line 1597 C++
Qt5WebEngineCore.dll!content::BrowserMainLoop::BrowserThreadsStarted() Line 1254
[Inline Frame] Qt5WebEngineCore.dll!base::RepeatingCallback<int __cdecl(void)>::Run() Line 129
Qt5WebEngineCore.dll!content::StartupTaskRunner::RunAllTasksNow() Line 43
Qt5WebEngineCore.dll!content::BrowserMainLoop::CreateStartupTasks() Line 933
Qt5WebEngineCore.dll!content::BrowserMainRunnerImpl::Initialize(const content::MainFunctionParams & parameters) Line 144
Qt5WebEngineCore.dll!QtWebEngineCore::WebEngineContext::WebEngineContext() Line 574
Qt5WebEngineCore.dll!QtWebEngineCore::WebEngineContext::current() Line 284
Qt5WebEngineCore.dll!QtWebEngineCore::ProfileAdapter::ProfileAdapter(const QString & storageName) Line 87
Qt5WebEngineWidgets.dll!QWebEngineProfile::QWebEngineProfile(QObject * parent) Line 289
I can see that it crashes in qtwebengine\src\3rdparty\chromium\base\values.cc in Value::GetAsDictionary because 'this' is nullptr. That means that the 'mainfest_value' is nullptr in qtwebengine\src\3rdparty\chromium\content\browser\service_manager\service_manager_context.cc:
std::unique_ptr<base::Value> manifest_value =
base::JSONReader::Read(contents);
DCHECK(manifest_value);
I assume this means the 'contents' string is empty or invalid.
Attachments
Issue Links
- relates to
-
QTBUG-94842 Crash after accessing QQuickWebEngineProfile::defaultProfile on some machines
- Closed