commit | a4f070a250a59c3765b319743312a377238a0a57 | [log] [tgz] |
---|---|---|
author | David Maunder <davidjm@google.com> | Tue Jun 04 00:54:03 2024 |
committer | Chromium LUCI CQ <chromium-scoped@luci-project-accounts.iam.gserviceaccount.com> | Tue Jun 04 00:54:03 2024 |
tree | afb2b1dfac36967401c8ee9b4f731b2c364677eb | |
parent | 2ff4f946284e0da422aa21fda3ea5abe4a802d86 [diff] |
Legacy and FlatBuffer TabState parity on TabPersistentStore#saveState It's an edge case but currently TabPersistentStore#saveState can end up with Legacy/FlatBuffer TabState inconsistency. For example, if we have a pending save for a Tab, TabPersistentStore#saveState will save legacy TabState but not FlatBuffer TabState. It's possible an earlier version of the TabState was stored to the FlatBuffer file. So when the user restarts they will get a previous snapshot of their Tab. This change ensures we save FlatBuffer TabState if 1) saveState() saves a pending Tab Save 2) If there's a pending migration in the queue for which a FlatBuffer file already exists (to ensure we're not in a state on startup where a previous snapshot would be restored). Bug: b:344029269 Change-Id: Iaeeb7589098779941db54c8814fd0fd729859d1e Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5591710 Commit-Queue: David Maunder <davidjm@chromium.org> Reviewed-by: Calder Kitagawa <ckitagawa@chromium.org> Code-Coverage: findit-for-me@appspot.gserviceaccount.com <findit-for-me@appspot.gserviceaccount.com> Cr-Commit-Position: refs/heads/main@{#1309720}
Chromium is an open-source browser project that aims to build a safer, faster, and more stable way for all users to experience the web.
The project's web site is https://www.chromium.org.
To check out the source code locally, don't use git clone
! Instead, follow the instructions on how to get the code.
Documentation in the source is rooted in docs/README.md.
Learn how to Get Around the Chromium Source Code Directory Structure.
For historical reasons, there are some small top level directories. Now the guidance is that new top level directories are for product (e.g. Chrome, Android WebView, Ash). Even if these products have multiple executables, the code should be in subdirectories of the product.
If you found a bug, please file it at https://crbug.com/new.