diff options
Diffstat (limited to 'Source')
-rw-r--r-- | Source/WebKit/qt/Api/qwebsettings.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/Source/WebKit/qt/Api/qwebsettings.cpp b/Source/WebKit/qt/Api/qwebsettings.cpp index 01818aff4..88172149c 100644 --- a/Source/WebKit/qt/Api/qwebsettings.cpp +++ b/Source/WebKit/qt/Api/qwebsettings.cpp @@ -28,6 +28,7 @@ #include "DatabaseTracker.h" #include "FileSystem.h" #include "FontCache.h" +#include "GCController.h" #include "IconDatabase.h" #include "Image.h" #if ENABLE(ICONDATABASE) @@ -805,7 +806,7 @@ QPixmap QWebSettings::webGraphic(WebGraphic type) } /*! - Frees up as much memory as possible by cleaning all memory caches such + Frees up as much memory as possible by calling the JavaScript garbage collector and cleaning all memory caches such as page, object and font cache. \since 4.6 @@ -832,6 +833,11 @@ void QWebSettings::clearMemoryCaches() // Empty the Cross-Origin Preflight cache WebCore::CrossOriginPreflightResultCache::shared().empty(); + + // Drop JIT compiled code from ExecutableAllocator. + WebCore::gcController().discardAllCompiledCode(); + // Garbage Collect to release the references of CachedResource from dead objects. + WebCore::gcController().garbageCollectNow(); } /*! |