WebKit Bugzilla
Attachment 371210 Details for
Bug 198496
: NetworkHTTPSUpgradeChecker should construct and destruct database on the background thread
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch
bug-198496-20190603140735.patch (text/plain), 3.33 KB, created by
Sihui Liu
on 2019-06-03 14:07:36 PDT
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
Sihui Liu
Created:
2019-06-03 14:07:36 PDT
Size:
3.33 KB
patch
obsolete
>Subversion Revision: 246036 >diff --git a/Source/WebKit/ChangeLog b/Source/WebKit/ChangeLog >index 3638a0682ed018fabaabb5c75b40302d57e2d0e6..92fe5b4ce91ef043de3fa9b42e3c4932781c425a 100644 >--- a/Source/WebKit/ChangeLog >+++ b/Source/WebKit/ChangeLog >@@ -1,3 +1,15 @@ >+2019-06-03 Sihui Liu <sihui_liu@apple.com> >+ >+ NetworkHTTPSUpgradeChecker database is accessed from multiple threads >+ https://bugs.webkit.org/show_bug.cgi?id=198496 >+ <rdar://problem/50795714> >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ * NetworkProcess/NetworkHTTPSUpgradeChecker.cpp: >+ (WebKit::NetworkHTTPSUpgradeChecker::NetworkHTTPSUpgradeChecker): >+ * NetworkProcess/NetworkHTTPSUpgradeChecker.h: >+ > 2019-06-03 Darin Adler <darin@apple.com> > > Finish cleanup of String::number for floating point >diff --git a/Source/WebKit/NetworkProcess/NetworkHTTPSUpgradeChecker.cpp b/Source/WebKit/NetworkProcess/NetworkHTTPSUpgradeChecker.cpp >index 156a625ce58454cb24141f84a7a87dd479c63d13..35f5162ba5fe836fe032beb03c5fa35aa033cc25 100644 >--- a/Source/WebKit/NetworkProcess/NetworkHTTPSUpgradeChecker.cpp >+++ b/Source/WebKit/NetworkProcess/NetworkHTTPSUpgradeChecker.cpp >@@ -39,6 +39,8 @@ > > namespace WebKit { > >+constexpr auto HTTPSUpgradeCheckerQuery = "SELECT host FROM hosts WHERE host = ?"_s; >+ > static const String& networkHTTPSUpgradeCheckerDatabasePath() > { > static NeverDestroyed<String> networkHTTPSUpgradeCheckerDatabasePath; >@@ -55,8 +57,6 @@ static const String& networkHTTPSUpgradeCheckerDatabasePath() > > NetworkHTTPSUpgradeChecker::NetworkHTTPSUpgradeChecker() > : m_workQueue(WorkQueue::create("HTTPS Upgrade Checker Thread")) >- , m_database(makeUniqueRef<WebCore::SQLiteDatabase>()) >- , m_statement(makeUniqueRef<WebCore::SQLiteStatement>(m_database.get(), "SELECT host FROM hosts WHERE host = ?;"_s)) > { > ASSERT(RunLoop::isMain()); > >@@ -67,6 +67,7 @@ NetworkHTTPSUpgradeChecker::NetworkHTTPSUpgradeChecker() > return; > } > >+ m_database = std::make_unique<SQLiteDatabase>(); > bool isDatabaseOpen = m_database->open(path, WebCore::SQLiteDatabase::OpenMode::ReadOnly); > if (!isDatabaseOpen) { > #if PLATFORM(COCOA) >@@ -79,6 +80,7 @@ NetworkHTTPSUpgradeChecker::NetworkHTTPSUpgradeChecker() > // Since we are using a workerQueue, the sequential dispatch blocks may be called by different threads. > m_database->disableThreadingChecks(); > >+ m_statement = std::make_unique<SQLiteStatement>(*m_database, HTTPSUpgradeCheckerQuery); > int isStatementPrepared = (m_statement->prepare() == SQLITE_OK); > ASSERT(isStatementPrepared); > if (!isStatementPrepared) >diff --git a/Source/WebKit/NetworkProcess/NetworkHTTPSUpgradeChecker.h b/Source/WebKit/NetworkProcess/NetworkHTTPSUpgradeChecker.h >index cc39f036374f70376b1afe8a82e7a6f1b90987b7..a1e6d2103336ce5f0e4486ddba5cd31cf1c638c5 100644 >--- a/Source/WebKit/NetworkProcess/NetworkHTTPSUpgradeChecker.h >+++ b/Source/WebKit/NetworkProcess/NetworkHTTPSUpgradeChecker.h >@@ -54,8 +54,8 @@ public: > > private: > Ref<WorkQueue> m_workQueue; >- UniqueRef<WebCore::SQLiteDatabase> m_database; >- UniqueRef<WebCore::SQLiteStatement> m_statement; >+ std::unique_ptr<WebCore::SQLiteDatabase> m_database; >+ std::unique_ptr<WebCore::SQLiteStatement> m_statement; > std::atomic<bool> m_didSetupCompleteSuccessfully { false }; > }; >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 198496
:
371210
|
371300
|
371326
|
371513