Diff
Modified: trunk/Source/WebKit2/ChangeLog (94475 => 94476)
--- trunk/Source/WebKit2/ChangeLog 2011-09-03 01:08:10 UTC (rev 94475)
+++ trunk/Source/WebKit2/ChangeLog 2011-09-03 01:20:49 UTC (rev 94476)
@@ -1,5 +1,26 @@
2011-09-02 Sheriff Bot <webkit.review....@gmail.com>
+ Unreviewed, rolling out r94473.
+ http://trac.webkit.org/changeset/94473
+ https://bugs.webkit.org/show_bug.cgi?id=67547
+
+ Putting http://trac.webkit.org/changeset/94454 back in as
+ http://trac.webkit.org/changeset/94472 fixed the problem
+ (Requested by msaboff on #webkit).
+
+ * UIProcess/API/C/WKContext.cpp:
+ (WKContextGarbageCollectJavaScriptObjects):
+ * UIProcess/API/C/WKContext.h:
+ * UIProcess/WebContext.cpp:
+ (WebKit::WebContext::garbageCollectJavaScriptObjects):
+ * UIProcess/WebContext.h:
+ * WebProcess/WebProcess.cpp:
+ (WebKit::WebProcess::garbageCollectJavaScriptObjects):
+ * WebProcess/WebProcess.h:
+ * WebProcess/WebProcess.messages.in:
+
+2011-09-02 Sheriff Bot <webkit.review....@gmail.com>
+
Unreviewed, rolling out r94454.
http://trac.webkit.org/changeset/94454
https://bugs.webkit.org/show_bug.cgi?id=67546
Modified: trunk/Source/WebKit2/UIProcess/API/C/WKContext.cpp (94475 => 94476)
--- trunk/Source/WebKit2/UIProcess/API/C/WKContext.cpp 2011-09-03 01:08:10 UTC (rev 94475)
+++ trunk/Source/WebKit2/UIProcess/API/C/WKContext.cpp 2011-09-03 01:20:49 UTC (rev 94476)
@@ -237,3 +237,8 @@
toImpl(contextRef)->getWebCoreStatistics(DictionaryCallback::create(context, callback));
}
+void WKContextGarbageCollectJavaScriptObjects(WKContextRef contextRef)
+{
+ toImpl(contextRef)->garbageCollectJavaScriptObjects();
+}
+
Modified: trunk/Source/WebKit2/UIProcess/API/C/WKContext.h (94475 => 94476)
--- trunk/Source/WebKit2/UIProcess/API/C/WKContext.h 2011-09-03 01:08:10 UTC (rev 94475)
+++ trunk/Source/WebKit2/UIProcess/API/C/WKContext.h 2011-09-03 01:20:49 UTC (rev 94476)
@@ -140,6 +140,8 @@
typedef void (*WKContextGetStatisticsFunction)(WKDictionaryRef statistics, WKErrorRef error, void* functionContext);
WK_EXPORT void WKContextGetStatistics(WKContextRef context, void* functionContext, WKContextGetStatisticsFunction function);
+
+WK_EXPORT void WKContextGarbageCollectJavaScriptObjects(WKContextRef context);
#ifdef __cplusplus
}
Modified: trunk/Source/WebKit2/UIProcess/WebContext.cpp (94475 => 94476)
--- trunk/Source/WebKit2/UIProcess/WebContext.cpp 2011-09-03 01:08:10 UTC (rev 94475)
+++ trunk/Source/WebKit2/UIProcess/WebContext.cpp 2011-09-03 01:20:49 UTC (rev 94476)
@@ -829,4 +829,9 @@
callback->performCallbackWithReturnValue(statistics.get());
}
+void WebContext::garbageCollectJavaScriptObjects()
+{
+ process()->send(Messages::WebProcess::GarbageCollectJavaScriptObjects(), 0);
+}
+
} // namespace WebKit
Modified: trunk/Source/WebKit2/UIProcess/WebContext.h (94475 => 94476)
--- trunk/Source/WebKit2/UIProcess/WebContext.h 2011-09-03 01:08:10 UTC (rev 94475)
+++ trunk/Source/WebKit2/UIProcess/WebContext.h 2011-09-03 01:20:49 UTC (rev 94476)
@@ -181,6 +181,7 @@
bool httpPipeliningEnabled();
void getWebCoreStatistics(PassRefPtr<DictionaryCallback>);
+ void garbageCollectJavaScriptObjects();
private:
WebContext(ProcessModel, const String& injectedBundlePath);
Modified: trunk/Source/WebKit2/WebProcess/WebProcess.cpp (94475 => 94476)
--- trunk/Source/WebKit2/WebProcess/WebProcess.cpp 2011-09-03 01:08:10 UTC (rev 94475)
+++ trunk/Source/WebKit2/WebProcess/WebProcess.cpp 2011-09-03 01:20:49 UTC (rev 94476)
@@ -931,6 +931,11 @@
m_connection->send(Messages::WebContext::DidGetWebCoreStatistics(data, callbackID), 0);
}
+void WebProcess::garbageCollectJavaScriptObjects()
+{
+ gcController().garbageCollectNow();
+}
+
#if ENABLE(PLUGIN_PROCESS)
void WebProcess::pluginProcessCrashed(const String& pluginPath)
{
Modified: trunk/Source/WebKit2/WebProcess/WebProcess.h (94475 => 94476)
--- trunk/Source/WebKit2/WebProcess/WebProcess.h 2011-09-03 01:08:10 UTC (rev 94475)
+++ trunk/Source/WebKit2/WebProcess/WebProcess.h 2011-09-03 01:20:49 UTC (rev 94476)
@@ -178,6 +178,7 @@
void setTextCheckerState(const TextCheckerState&);
void getWebCoreStatistics(uint64_t callbackID);
+ void garbageCollectJavaScriptObjects();
// ChildProcess
virtual bool shouldTerminate();
Modified: trunk/Source/WebKit2/WebProcess/WebProcess.messages.in (94475 => 94476)
--- trunk/Source/WebKit2/WebProcess/WebProcess.messages.in 2011-09-03 01:08:10 UTC (rev 94475)
+++ trunk/Source/WebKit2/WebProcess/WebProcess.messages.in 2011-09-03 01:20:49 UTC (rev 94476)
@@ -69,4 +69,5 @@
SetEnhancedAccessibility(bool flag)
GetWebCoreStatistics(uint64_t callbackID)
+ GarbageCollectJavaScriptObjects()
}