RESOLVED FIXED 31161
Allow custom memory allocation control for the part of loader directory in WebCore
https://bugs.webkit.org/show_bug.cgi?id=31161
Summary Allow custom memory allocation control for the part of loader directory in We...
Zoltan Horvath
Reported 2009-11-05 04:18:51 PST
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 IconDatabaseClient - WebCore/loader/icon/IconDatabase.cpp:89 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.
Attachments
proposed patch (6.56 KB, patch)
2009-11-05 04:20 PST, Zoltan Horvath
eric: review-
commit-queue: commit-queue-
updated proposed patch (5.97 KB, patch)
2009-11-10 00:51 PST, Zoltan Horvath
no flags
Zoltan Horvath
Comment 1 2009-11-05 04:20:37 PST
Created attachment 42555 [details] proposed patch
WebKit Commit Bot
Comment 2 2009-11-09 06:57:41 PST
Comment on attachment 42555 [details] proposed patch Rejecting patch 42555 from commit-queue. Failed to run "WebKitTools/Scripts/build-webkit" exit_code: 1 Last 500 characters of output: el/Projects/build/WebKit.build/Release/WebKit.build/Objects-normal/i386/WebIconDatabase.o /Users/eseidel/Projects/CommitQueue/WebKit/mac/Misc/WebIconDatabase.mm normal i386 objective-c++ com.apple.compilers.gcc.4_2 Distributed-CompileC /Users/eseidel/Projects/build/WebKit.build/Release/WebKit.build/Objects-normal/i386/WebIconDatabaseClient.o /Users/eseidel/Projects/CommitQueue/WebKit/mac/WebCoreSupport/WebIconDatabaseClient.mm normal i386 objective-c++ com.apple.compilers.gcc.4_2 (2 failures)
Eric Seidel (no email)
Comment 3 2009-11-09 17:00:53 PST
Comment on attachment 42555 [details] proposed patch I'm not sure exactly the build error, but looks like this patch will need further modification before it can be committed.
Zoltan Horvath
Comment 4 2009-11-10 00:51:05 PST
Created attachment 42850 [details] updated proposed patch I rechecked it on MAC, I'm not familiar with the mm-files yet, so I removed class IconDatabaseClient inheriting from the patch. I'll file it separately. Now, it works properly.
Zoltan Horvath
Comment 5 2009-11-10 11:06:04 PST
Comment on attachment 42850 [details] updated proposed patch > Index: WebCore/ChangeLog > =================================================================== > --- WebCore/ChangeLog (revision 50723) > +++ WebCore/ChangeLog (working copy) > @@ -1,3 +1,35 @@ > +2009-11-10 Zoltan Horvath <zoltan@webkit.org> > + > + Reviewed by NOBODY (OOPS!). > + > + 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-09 Dirk Schulze <krit@webkit.org> > > Reviewed by Oliver Hunt. > Index: WebCore/loader/ImageLoader.cpp > =================================================================== > --- WebCore/loader/ImageLoader.cpp (revision 50723) > +++ WebCore/loader/ImageLoader.cpp (working copy) > @@ -31,7 +31,7 @@ > > namespace WebCore { > > -class ImageEventSender { > +class ImageEventSender : public Noncopyable { > public: > ImageEventSender(const AtomicString& eventType); > > Index: WebCore/loader/ProgressTracker.cpp > =================================================================== > --- WebCore/loader/ProgressTracker.cpp (revision 50723) > +++ WebCore/loader/ProgressTracker.cpp (working copy) > @@ -47,7 +47,7 @@ static const double finalProgressValue = > > static const int progressItemDefaultEstimatedLength = 1024 * 16; > > -struct ProgressItem { > +struct ProgressItem : Noncopyable { > ProgressItem(long long length) > : bytesReceived(0) > , estimatedLength(length) { } > Index: WebCore/loader/RedirectScheduler.cpp > =================================================================== > --- WebCore/loader/RedirectScheduler.cpp (revision 50723) > +++ WebCore/loader/RedirectScheduler.cpp (working copy) > @@ -44,7 +44,7 @@ > > namespace WebCore { > > -struct ScheduledRedirection { > +struct ScheduledRedirection : Noncopyable { > enum Type { redirection, locationChange, historyNavigation, formSubmission }; > > const Type type; > Index: WebCore/loader/Request.h > =================================================================== > --- WebCore/loader/Request.h (revision 50723) > +++ WebCore/loader/Request.h (working copy) > @@ -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: WebCore/loader/ThreadableLoaderClient.h > =================================================================== > --- WebCore/loader/ThreadableLoaderClient.h (revision 50723) > +++ WebCore/loader/ThreadableLoaderClient.h (working copy) > @@ -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: WebCore/loader/WorkerThreadableLoader.h > =================================================================== > --- WebCore/loader/WorkerThreadableLoader.h (revision 50723) > +++ WebCore/loader/WorkerThreadableLoader.h (working copy) > @@ -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: WebCore/loader/appcache/ApplicationCacheHost.h > =================================================================== > --- WebCore/loader/appcache/ApplicationCacheHost.h (revision 50723) > +++ WebCore/loader/appcache/ApplicationCacheHost.h (working copy) > @@ -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: WebCore/loader/appcache/ApplicationCacheStorage.h > =================================================================== > --- WebCore/loader/appcache/ApplicationCacheStorage.h (revision 50723) > +++ WebCore/loader/appcache/ApplicationCacheStorage.h (working copy) > @@ -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;
WebKit Commit Bot
Comment 6 2009-11-10 11:24:29 PST
Comment on attachment 42850 [details] updated proposed patch Clearing flags on attachment: 42850 Committed r50748: <http://trac.webkit.org/changeset/50748>
WebKit Commit Bot
Comment 7 2009-11-10 11:24:33 PST
All reviewed patches have been landed. Closing bug.
Note You need to log in before you can comment on or make changes to this bug.