2009-11-10 Zoltan Horvath <zoltan@webkit.org>
authoreric@webkit.org <eric@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 10 Nov 2009 19:24:21 +0000 (19:24 +0000)
committereric@webkit.org <eric@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 10 Nov 2009 19:24:21 +0000 (19:24 +0000)
        Reviewed by Darin Adler.

        Allow custom memory allocation control for the part of loader directory in WebCore
        https://bugs.webkit.org/show_bug.cgi?id=31161

        Inherits the following classes from Noncopyable because these are instantiated
        by 'new' and these are no need to be copyable:

        class Request - WebCore/loader/loader.cpp:100
        struct ScheduledRedirection - WebCore/loader/RedirectScheduler.cpp:164
        class ApplicationCacheStorage - WebCore/loader/appcache/ApplicationCacheStorage.cpp:1121
        class ApplicationCacheHost -  WebCore/loader/DocumentLoader.cpp:151
        class ImageEventSender - WebCore/loader/ImageLoader.cpp:54
        struct ProgressItem - WebCore/loader/ProgressTracker.cpp:169

        Inherits ThreadableLoaderClient class from Noncopyable because (its child class)
        MainThreadBridge is instantiated by 'new' in
        WebCore/loader/WorkerThreadableLoader.cpp:59 it is no need to be copyable.

        ThreadableLoaderClient's inheriting has been changed to public.

        * loader/ImageLoader.cpp:
        * loader/ProgressTracker.cpp:
        * loader/RedirectScheduler.cpp:
        * loader/Request.h:
        * loader/ThreadableLoaderClient.h:
        * loader/WorkerThreadableLoader.h:
        * loader/appcache/ApplicationCacheHost.h:
        * loader/appcache/ApplicationCacheStorage.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@50748 268f45cc-cd09-0410-ab3c-d52691b4dbfc

WebCore/ChangeLog
WebCore/loader/ImageLoader.cpp
WebCore/loader/ProgressTracker.cpp
WebCore/loader/RedirectScheduler.cpp
WebCore/loader/Request.h
WebCore/loader/ThreadableLoaderClient.h
WebCore/loader/WorkerThreadableLoader.h
WebCore/loader/appcache/ApplicationCacheHost.h
WebCore/loader/appcache/ApplicationCacheStorage.h

index c76d4ad11e2b9fdf437f6629692aef98b7043e56..4afbc601989037400a89f97b7fbf4b8286ce9706 100644 (file)
@@ -1,3 +1,35 @@
+2009-11-10  Zoltan Horvath  <zoltan@webkit.org>
+
+        Reviewed by Darin Adler.
+
+        Allow custom memory allocation control for the part of loader directory in WebCore
+        https://bugs.webkit.org/show_bug.cgi?id=31161
+
+        Inherits the following classes from Noncopyable because these are instantiated
+        by 'new' and these are no need to be copyable:
+
+        class Request - WebCore/loader/loader.cpp:100
+        struct ScheduledRedirection - WebCore/loader/RedirectScheduler.cpp:164
+        class ApplicationCacheStorage - WebCore/loader/appcache/ApplicationCacheStorage.cpp:1121
+        class ApplicationCacheHost -  WebCore/loader/DocumentLoader.cpp:151
+        class ImageEventSender - WebCore/loader/ImageLoader.cpp:54
+        struct ProgressItem - WebCore/loader/ProgressTracker.cpp:169
+
+        Inherits ThreadableLoaderClient class from Noncopyable because (its child class) 
+        MainThreadBridge is instantiated by 'new' in 
+        WebCore/loader/WorkerThreadableLoader.cpp:59 it is no need to be copyable.
+
+        ThreadableLoaderClient's inheriting has been changed to public.
+
+        * loader/ImageLoader.cpp:
+        * loader/ProgressTracker.cpp:
+        * loader/RedirectScheduler.cpp:
+        * loader/Request.h:
+        * loader/ThreadableLoaderClient.h:
+        * loader/WorkerThreadableLoader.h:
+        * loader/appcache/ApplicationCacheHost.h:
+        * loader/appcache/ApplicationCacheStorage.h:
+
 2009-11-10  Philippe Normand  <pnormand@igalia.com>
 
         Reviewed by Eric Seidel.
index cdc31bcd09a9bd30de5a3abf558cd4bd2b26217b..e09d574c6ef90066b86dbfd7c4c1480a905f06bf 100644 (file)
@@ -31,7 +31,7 @@
 
 namespace WebCore {
 
-class ImageEventSender {
+class ImageEventSender : public Noncopyable {
 public:
     ImageEventSender(const AtomicString& eventType);
 
index 6b6ce1b773e3f271f270f58e1724c9e78d314c8d..0c9f2fbeb2eb96f16dcc60213915a096285bc24b 100644 (file)
@@ -47,7 +47,7 @@ static const double finalProgressValue = 0.9; // 1.0 - initialProgressValue
 
 static const int progressItemDefaultEstimatedLength = 1024 * 16;
 
-struct ProgressItem {
+struct ProgressItem : Noncopyable {
     ProgressItem(long long length) 
         : bytesReceived(0)
         , estimatedLength(length) { }
index cd0baf299f2f8498b059abea48ca405e3facf4dc..f2202cc3b0af85115784d70d307a7a29d80b2be9 100644 (file)
@@ -44,7 +44,7 @@
 
 namespace WebCore {
 
-struct ScheduledRedirection {
+struct ScheduledRedirection : Noncopyable {
     enum Type { redirection, locationChange, historyNavigation, formSubmission };
 
     const Type type;
index 07d1b82d82b8db2fbca783d3e714277b87d86ee1..1e02d7781c2d46bf6d7815326dca6f4f9134e276 100644 (file)
@@ -30,7 +30,7 @@ namespace WebCore {
     class CachedResource;
     class DocLoader;
 
-    class Request {
+    class Request : public Noncopyable {
     public:
         Request(DocLoader*, CachedResource*, bool incremental, bool skipCanLoadCheck, bool sendResourceLoadCallbacks);
         ~Request();
index 93a8e869df1e1908db3051616d0789ca50e64b00..b8a65841aebfce650e85b93ade29a5e7677b55d2 100644 (file)
@@ -36,7 +36,7 @@ namespace WebCore {
     class ResourceError;
     class ResourceResponse;
 
-    class ThreadableLoaderClient {
+    class ThreadableLoaderClient : public Noncopyable {
     public:
         virtual void didSendData(unsigned long long /*bytesSent*/, unsigned long long /*totalBytesToBeSent*/) { }
 
index 713a7d1cb2279bc34945af9b2c78ae56a56dd539..86083f5430d7ae4077a349cf9a8fa96623bfee1a 100644 (file)
@@ -94,7 +94,7 @@ namespace WebCore {
         //    thread do "ThreadableLoaderClientWrapper::ref" (automatically inside of the cross thread copy
         //    done in createCallbackTask), so the ThreadableLoaderClientWrapper instance is there until all
         //    tasks are executed.
-        class MainThreadBridge : ThreadableLoaderClient {
+        class MainThreadBridge : public ThreadableLoaderClient {
         public:
             // All executed on the worker context's thread.
             MainThreadBridge(PassRefPtr<ThreadableLoaderClientWrapper>, WorkerLoaderProxy&, const String& taskMode, const ResourceRequest&, const ThreadableLoaderOptions&);
index 0897d4329634a44516ac3eb8d405db5b166d6d01..9c355de61dc097eae5d11533712224d562b46a35 100644 (file)
@@ -57,7 +57,7 @@ namespace WebCore {
     class ApplicationCacheStorage;
 #endif
 
-    class ApplicationCacheHost {
+    class ApplicationCacheHost : public Noncopyable {
     public:
         // The Status numeric values are specified in the HTML5 spec.
         enum Status {
index 1348aa92b5abd54ddef78f4733797a31cf8d7c18..aaa5c9cb4678f807355861df6a78504ece58071a 100644 (file)
@@ -44,7 +44,7 @@ class KURL;
 template <class T>
 class StorageIDJournal;
 
-class ApplicationCacheStorage {
+class ApplicationCacheStorage : public Noncopyable {
 public:
     void setCacheDirectory(const String&);
     const String& cacheDirectory() const;