Fix crash in MemoryCache::replace.

It's possible that MemoryCache::replace will try to evict a resource that has
already been evicted. If there is another resource present in its place, it
won't get evicted, but will get partially overwritten. In that partial
overwrite, we leave references to it in the LRU lists, leading to later
crashes.

BUG=357174
TEST=MemoryCacheTest.RemoveDuringRevalidation

Review URL: https://codereview.chromium.org/214773004

git-svn-id: svn://svn.chromium.org/blink/trunk@170217 bbb929c8-8fbe-4397-9dbb-9b2b20218538