Title: [152219] trunk/Source/WebCore
Revision
152219
Author
[email protected]
Date
2013-07-01 06:27:28 -0700 (Mon, 01 Jul 2013)

Log Message

Use DeferrableOneShotTimer for deleting decoded data
https://bugs.webkit.org/show_bug.cgi?id=118150

Reviewed by Andreas Kling.

Adam Barth pointed out that the virtual function for overriding the default delay doesn't work
as expected from base class constructor.

* loader/cache/CachedResource.cpp:
(WebCore::deadDecodedDataDeletionIntervalForResourceType):
(WebCore::CachedResource::CachedResource):
        
    Use static function instead of calling a virtual.

* loader/cache/CachedResource.h:
* loader/cache/CachedScript.cpp:
* loader/cache/CachedScript.h:

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (152218 => 152219)


--- trunk/Source/WebCore/ChangeLog	2013-07-01 10:43:48 UTC (rev 152218)
+++ trunk/Source/WebCore/ChangeLog	2013-07-01 13:27:28 UTC (rev 152219)
@@ -1,5 +1,26 @@
-2013-07-01  Kangil Han  <[email protected]>
+2013-07-01  Antti Koivisto  <[email protected]>
 
+        Use DeferrableOneShotTimer for deleting decoded data
+        https://bugs.webkit.org/show_bug.cgi?id=118150
+
+        Reviewed by Andreas Kling.
+
+        Adam Barth pointed out that the virtual function for overriding the default delay doesn't work
+        as expected from base class constructor.
+
+        * loader/cache/CachedResource.cpp:
+        (WebCore::deadDecodedDataDeletionIntervalForResourceType):
+        (WebCore::CachedResource::CachedResource):
+        
+            Use static function instead of calling a virtual.
+
+        * loader/cache/CachedResource.h:
+        * loader/cache/CachedScript.cpp:
+        * loader/cache/CachedScript.h:
+
+2013-07-01  Kangil Han  <k
[email protected]>
+
         Adopt toHTMLTextAreaElement for code cleanup
         https://bugs.webkit.org/show_bug.cgi?id=118226
 

Modified: trunk/Source/WebCore/loader/cache/CachedResource.cpp (152218 => 152219)


--- trunk/Source/WebCore/loader/cache/CachedResource.cpp	2013-07-01 10:43:48 UTC (rev 152218)
+++ trunk/Source/WebCore/loader/cache/CachedResource.cpp	2013-07-01 13:27:28 UTC (rev 152219)
@@ -182,13 +182,20 @@
 }
 #endif
 
+static double deadDecodedDataDeletionIntervalForResourceType(CachedResource::Type type)
+{
+    if (type == CachedResource::Script)
+        return 0;
+    return memoryCache()->deadDecodedDataDeletionInterval();
+}
+
 DEFINE_DEBUG_ONLY_GLOBAL(RefCountedLeakCounter, cachedResourceLeakCounter, ("CachedResource"));
 
 CachedResource::CachedResource(const ResourceRequest& request, Type type)
     : m_resourceRequest(request)
     , m_loadPriority(defaultPriorityForResourceType(type))
     , m_responseTimestamp(currentTime())
-    , m_decodedDataDeletionTimer(this, &CachedResource::decodedDataDeletionTimerFired, decodedDataDeletionTimerDelay())
+    , m_decodedDataDeletionTimer(this, &CachedResource::decodedDataDeletionTimerFired, deadDecodedDataDeletionIntervalForResourceType(type))
     , m_lastDecodedAccessTime(0)
     , m_loadFinishTime(0)
     , m_encodedSize(0)
@@ -888,11 +895,6 @@
         m_loader->didChangePriority(loadPriority);
 }
 
-double CachedResource::decodedDataDeletionTimerDelay() const
-{
-    return memoryCache()->deadDecodedDataDeletionInterval();
-}
-
 CachedResource::CachedResourceCallback::CachedResourceCallback(CachedResource* resource, CachedResourceClient* client)
     : m_resource(resource)
     , m_client(client)

Modified: trunk/Source/WebCore/loader/cache/CachedResource.h (152218 => 152219)


--- trunk/Source/WebCore/loader/cache/CachedResource.h	2013-07-01 10:43:48 UTC (rev 152218)
+++ trunk/Source/WebCore/loader/cache/CachedResource.h	2013-07-01 13:27:28 UTC (rev 152219)
@@ -296,7 +296,6 @@
 private:
     bool addClientToSet(CachedResourceClient*);
 
-    virtual double decodedDataDeletionTimerDelay() const;
     void decodedDataDeletionTimerFired(DeferrableOneShotTimer<CachedResource>*);
 
     virtual PurgePriority purgePriority() const { return PurgeDefault; }

Modified: trunk/Source/WebCore/loader/cache/CachedScript.cpp (152218 => 152219)


--- trunk/Source/WebCore/loader/cache/CachedScript.cpp	2013-07-01 10:43:48 UTC (rev 152218)
+++ trunk/Source/WebCore/loader/cache/CachedScript.cpp	2013-07-01 13:27:28 UTC (rev 152219)
@@ -97,11 +97,6 @@
         makePurgeable(true);
 }
 
-double CachedScript::decodedDataDeletionTimerDelay() const
-{
-    return 0;
-}
-
 #if ENABLE(NOSNIFF)
 bool CachedScript::mimeTypeAllowedByNosniff() const
 {

Modified: trunk/Source/WebCore/loader/cache/CachedScript.h (152218 => 152219)


--- trunk/Source/WebCore/loader/cache/CachedScript.h	2013-07-01 10:43:48 UTC (rev 152218)
+++ trunk/Source/WebCore/loader/cache/CachedScript.h	2013-07-01 13:27:28 UTC (rev 152219)
@@ -57,7 +57,6 @@
         virtual void finishLoading(ResourceBuffer*) OVERRIDE;
 
         virtual void destroyDecodedData() OVERRIDE;
-        virtual double decodedDataDeletionTimerDelay() const OVERRIDE;
 
         String m_script;
         RefPtr<TextResourceDecoder> m_decoder;
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to