Title: [124653] trunk/Source/WebCore
Revision
124653
Author
[email protected]
Date
2012-08-03 14:19:36 -0700 (Fri, 03 Aug 2012)

Log Message

[Chromium] Web Inspector: Win Dbg tests timing out (r123556 or r123560?)
https://bugs.webkit.org/show_bug.cgi?id=92570

Reviewed by Pavel Feldman.

Try restricting the use of the GC hint for canvas contexts to only
WebGL contexts, where it is most needed, to see whether this
clears up the timeouts.

* bindings/v8/custom/V8HTMLCanvasElementCustom.cpp:
(WebCore::V8HTMLCanvasElement::getContextCallback):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (124652 => 124653)


--- trunk/Source/WebCore/ChangeLog	2012-08-03 21:13:13 UTC (rev 124652)
+++ trunk/Source/WebCore/ChangeLog	2012-08-03 21:19:36 UTC (rev 124653)
@@ -1,3 +1,17 @@
+2012-08-03  Kenneth Russell  <[email protected]>
+
+        [Chromium] Web Inspector: Win Dbg tests timing out (r123556 or r123560?)
+        https://bugs.webkit.org/show_bug.cgi?id=92570
+
+        Reviewed by Pavel Feldman.
+
+        Try restricting the use of the GC hint for canvas contexts to only
+        WebGL contexts, where it is most needed, to see whether this
+        clears up the timeouts.
+
+        * bindings/v8/custom/V8HTMLCanvasElementCustom.cpp:
+        (WebCore::V8HTMLCanvasElement::getContextCallback):
+
 2012-08-02  Jeffrey Pfau  <[email protected]>
 
         Add API for enabling blanket third-party data blocking

Modified: trunk/Source/WebCore/bindings/v8/custom/V8HTMLCanvasElementCustom.cpp (124652 => 124653)


--- trunk/Source/WebCore/bindings/v8/custom/V8HTMLCanvasElementCustom.cpp	2012-08-03 21:13:13 UTC (rev 124652)
+++ trunk/Source/WebCore/bindings/v8/custom/V8HTMLCanvasElementCustom.cpp	2012-08-03 21:19:36 UTC (rev 124653)
@@ -87,16 +87,16 @@
     if (!result)
         return v8::Null(args.GetIsolate());
 
-    // Both 2D and 3D canvas contexts can hold on to lots of GPU resources, and we
-    // want to take an opportunity to get rid of them as soon as possible when we
-    // navigate away from pages using them.
-    V8BindingPerIsolateData* perIsolateData = V8BindingPerIsolateData::current(args.GetIsolate());
-    perIsolateData->setShouldCollectGarbageSoon();
-
     if (result->is2d())
         return toV8(static_cast<CanvasRenderingContext2D*>(result), args.GetIsolate());
 #if ENABLE(WEBGL)
     else if (result->is3d()) {
+        // 3D canvas contexts can hold on to lots of GPU resources, and we want to take an
+        // opportunity to get rid of them as soon as possible when we navigate away from pages using
+        // them.
+        V8BindingPerIsolateData* perIsolateData = V8BindingPerIsolateData::current(args.GetIsolate());
+        perIsolateData->setShouldCollectGarbageSoon();
+
         v8::Handle<v8::Value> v8Result = toV8(static_cast<WebGLRenderingContext*>(result), args.GetIsolate());
         if (InspectorInstrumentation::hasFrontends()) {
             ScriptState* scriptState = ScriptState::forContext(v8::Context::GetCurrent());
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to