Commit 6a401857 authored by akling@apple.com's avatar akling@apple.com

REGRESSION(r160260): Memory pressure signal causes web process to hang.

<https://webkit.org/b/125465>

Reviewed by Tim Horton.

This command caused all of my web processes to hang:

    notifyutil -p org.WebKit.lowMemory

This only happens when the cache pruning code encounters a resource
using purgeable memory.

* loader/cache/MemoryCache.cpp:
(WebCore::MemoryCache::pruneLiveResourcesToSize):

    Grab the next CachedResource pointer before continuing the loop.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160327 268f45cc-cd09-0410-ab3c-d52691b4dbfc
parent edecfb93
2013-12-09 Andreas Kling <akling@apple.com>
REGRESSION(r160260): Memory pressure signal causes web process to hang.
<https://webkit.org/b/125465>
Reviewed by Tim Horton.
This command caused all of my web processes to hang:
notifyutil -p org.WebKit.lowMemory
This only happens when the cache pruning code encounters a resource
using purgeable memory.
* loader/cache/MemoryCache.cpp:
(WebCore::MemoryCache::pruneLiveResourcesToSize):
Grab the next CachedResource pointer before continuing the loop.
2013-12-09 peavo@outlook.com <peavo@outlook.com>
[WinCairo] OpenGL compile error.
......@@ -266,8 +266,10 @@ void MemoryCache::pruneLiveResourcesToSize(unsigned targetSize)
if (elapsedTime < cMinDelayBeforeLiveDecodedPrune)
return;
if (current->decodedDataIsPurgeable())
if (current->decodedDataIsPurgeable()) {
current = prev;
continue;
}
// Destroy our decoded data. This will remove us from
// m_liveDecodedResources, and possibly move us to a different LRU
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment