Title: [277347] trunk/Source/WebCore
Revision
277347
Author
gga...@apple.com
Date
2021-05-11 17:54:26 -0700 (Tue, 11 May 2021)

Log Message

Function.prototype.toString triggers page demand on Speedometer
https://bugs.webkit.org/show_bug.cgi?id=225678

Reviewed by Mark Lam.

Some JS libraries -- e.g. jQuery, Ember-Debug, Angular -- like to
toString() JS functions in order to enforce return type, argument type,
or deprecation invariants. This triggers pathological page demand if
we keep throwing away the underlying script string.

* loader/cache/CachedResource.cpp:
(WebCore::deadDecodedDataDeletionIntervalForResourceType): Let's try 5s.

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (277346 => 277347)


--- trunk/Source/WebCore/ChangeLog	2021-05-12 00:52:09 UTC (rev 277346)
+++ trunk/Source/WebCore/ChangeLog	2021-05-12 00:54:26 UTC (rev 277347)
@@ -1,3 +1,18 @@
+2021-05-11  Geoffrey Garen  <gga...@apple.com>
+
+        Function.prototype.toString triggers page demand on Speedometer
+        https://bugs.webkit.org/show_bug.cgi?id=225678
+
+        Reviewed by Mark Lam.
+
+        Some JS libraries -- e.g. jQuery, Ember-Debug, Angular -- like to
+        toString() JS functions in order to enforce return type, argument type,
+        or deprecation invariants. This triggers pathological page demand if
+        we keep throwing away the underlying script string.
+
+        * loader/cache/CachedResource.cpp:
+        (WebCore::deadDecodedDataDeletionIntervalForResourceType): Let's try 5s.
+
 2021-05-11  Toshio Ogasawara  <toshio.ogasaw...@access-company.com>
 
         [MSE] QuotaExceededError Exception not thrown even if the sum of totalTrackBufferSize and appendBuffer size exceeds maximumBufferSize.

Modified: trunk/Source/WebCore/loader/cache/CachedResource.cpp (277346 => 277347)


--- trunk/Source/WebCore/loader/cache/CachedResource.cpp	2021-05-12 00:52:09 UTC (rev 277346)
+++ trunk/Source/WebCore/loader/cache/CachedResource.cpp	2021-05-12 00:54:26 UTC (rev 277347)
@@ -78,7 +78,7 @@
 static Seconds deadDecodedDataDeletionIntervalForResourceType(CachedResource::Type type)
 {
     if (type == CachedResource::Type::Script)
-        return 0_s;
+        return 5_s;
 
     return MemoryCache::singleton().deadDecodedDataDeletionInterval();
 }
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to