commit | d1fef2b1ad38fe1ef8c3914fb5dadc39bae80b9b | [log] [tgz] |
---|---|---|
author | Benoit Lize <lizeb@chromium.org> | Thu Jul 12 12:09:37 2018 |
committer | Commit Bot <commit-bot@chromium.org> | Thu Jul 12 12:09:37 2018 |
tree | 74564a41a576be43492d70e9d24a56944c562fd0 | |
parent | d18929b41e24487865c4ed9da46129e6b037beeb [diff] |
blink/wtf: Really move MovableStrings when DCHECK_IS_ON. When a MovableString is parked, actually park the content, and poison the previous allocation. This is intended to find cached raw pointer accesses, which are not allowed beyond the UI thread task per the contract of the class. Enabled only when DCHECK_IS_ON to prevent potential crashes. Changes with and without DCHECK()s: - Cache some String properties in MovableStringImpl - Add a parked_strings_ to MovableStringTable for accounting, and update tests accordingly. Changes with DCHECK()s: - Add a parked_string_ member to MovableStringImpl - Copy the string to the parked version in Park(), and poison the previous allocation. - Restore the string in Unpark(). Bug: 837659 Change-Id: Ib7631d5e12471826c9e71a424e30d26cf8f1f042 Reviewed-on: https://chromium-review.googlesource.com/1133169 Reviewed-by: Kentaro Hara <haraken@chromium.org> Commit-Queue: Benoit L <lizeb@chromium.org> Cr-Commit-Position: refs/heads/master@{#574529}
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.
Documentation in the source is rooted in docs/README.md.
Learn how to Get Around the Chromium Source Code Directory Structure .