Branch: refs/heads/webkitglib/2.50
Home: https://github.com/WebKit/WebKit
Commit: 85345f2a2141fc17ffb8e062a9818948bec30ac0
https://github.com/WebKit/WebKit/commit/85345f2a2141fc17ffb8e062a9818948bec30ac0
Author: Sihui Liu <[email protected]>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M Source/WebKit/NetworkProcess/storage/SQLiteStorageArea.cpp
Log Message:
-----------
Cherry-pick 301155@main (b290846137ed).
https://bugs.webkit.org/show_bug.cgi?id=300294
ASSERTION FAILED: checkedPtrCountWithoutThreadCheck() in
SQLiteStorageArea::prepareDatabase
https://bugs.webkit.org/show_bug.cgi?id=300294
rdar://162083739
Reviewed by Chris Dumez.
SQLiteStorageArea::prepareDatabase might set m_database to null after
m_database is captured in a local CheckedPtr
variable resultDatabase. When the CheckedPtr variable is destroyed at
function exit, the assertion will be hit as the
SQLiteDatabase object is already gone. To fix this, this patch uses a local
UniqueRef variable to replace the
CheckedPtr. The UniqueRef is only moved to m_database if operation
succeeds, so prepareDatabase does not need to reset
m_database in multiple conditions.
This patch also contains a drive-by fix that when prepareDatabase tries to
open database for the second time, it does
not pass the right open options.
Canonical link: https://commits.webkit.org/301155@main
Canonical link: https://commits.webkit.org/298234.183@webkitglib/2.50
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes