Fix the multi-threaded access to WeakPtr<BrowsingDataRemoverImpl>
Previously, we depended on a WeakPtr to access BrowsingDataRemoverImpl
to gain access to its delegate on which we called the embedder origin
type matching method.
With this CL, the delegate provides a callback to a static method,
eliminating the need for any pointers.
To prevent a similar bug from happening in the future, we proactively
bind the WeakPtr<BrowsingDataRemoverImpl> to the UI thread, so it
would immediately DCHECK if it was misused on the IO thread.
BUG=705538,668114
Review-Url: https://codereview.chromium.org/2781083002
Cr-Commit-Position: refs/heads/master@{#462530}
7 files changed