Changeset 64400 in webkit
- Timestamp:
- Jul 30, 2010 7:22:45 PM (14 years ago)
- Location:
- trunk
- Files:
-
- 4 added
- 39 edited
- 3 moved
Legend:
- Unmodified
- Added
- Removed
-
trunk/WebCore/ChangeLog
r64399 r64400 1 2010-07-30 Joseph Pecoraro <joepeck@webkit.org> 2 3 Reviewed by David Kilzer. 4 5 Limit ApplicationCache Total and Per-Origin Storage Capacity (Quotas) 6 https://bugs.webkit.org/show_bug.cgi?id=40627 7 8 Part 4 - Client Notification when the Quota is Reached 9 10 Notify the WebKit client when the per-origin quota is reached 11 via a delegate method reachedApplicationCacheOriginQuota. 12 13 Call the delegate method when the quota is reached. 14 15 * loader/appcache/ApplicationCacheGroup.cpp: 16 (WebCore::ApplicationCacheGroup::ApplicationCacheGroup): 17 (WebCore::ApplicationCacheGroup::didFinishLoading): 18 (WebCore::ApplicationCacheGroup::didReachOriginQuota): 19 (WebCore::ApplicationCacheGroup::cacheUpdateFailedDueToOriginQuota): 20 (WebCore::ApplicationCacheGroup::checkIfLoadIsComplete): 21 (WebCore::ApplicationCacheGroup::scheduleReachedOriginQuotaCallback): 22 * loader/appcache/ApplicationCacheGroup.h: 23 24 Some minor refactoring to access more quota information 25 without repeating code. Such as origin usage, and creating 26 an origin record. 27 28 * loader/appcache/ApplicationCacheStorage.cpp: 29 (WebCore::ApplicationCacheStorage::usageForOrigin): 30 (WebCore::ApplicationCacheStorage::storeUpdatedQuotaForOrigin): 31 (WebCore::ApplicationCacheStorage::store): 32 (WebCore::ApplicationCacheStorage::ensureOriginRecord): 33 * loader/appcache/ApplicationCacheStorage.h: 34 35 Boilerplate. Exports and definition of the delegate method. 36 37 * WebCore.OfflineWebApplications.exp: 38 * loader/EmptyClients.h: 39 (WebCore::EmptyChromeClient::reachedApplicationCacheOriginQuota): 40 * page/ChromeClient.h: 41 1 42 2010-07-30 Joseph Pecoraro <joepeck@webkit.org> 2 43 -
trunk/WebCore/WebCore.exp.in
r64397 r64400 1466 1466 1467 1467 #if ENABLE(OFFLINE_WEB_APPLICATIONS) 1468 __ZN7WebCore23ApplicationCacheStorage14quotaForOriginEPKNS_14SecurityOriginERx 1468 1469 __ZN7WebCore23ApplicationCacheStorage14setMaximumSizeEx 1470 __ZN7WebCore23ApplicationCacheStorage14usageForOriginEPKNS_14SecurityOriginERx 1469 1471 __ZN7WebCore23ApplicationCacheStorage16storeCopyOfCacheERKNS_6StringEPNS_20ApplicationCacheHostE 1470 1472 __ZN7WebCore23ApplicationCacheStorage17setCacheDirectoryERKNS_6StringE 1471 1473 __ZN7WebCore23ApplicationCacheStorage18vacuumDatabaseFileEv 1472 1474 __ZN7WebCore23ApplicationCacheStorage21setDefaultOriginQuotaEx 1475 __ZN7WebCore23ApplicationCacheStorage26storeUpdatedQuotaForOriginEPKNS_14SecurityOriginEx 1476 __ZN7WebCore23ApplicationCacheStorage36remainingSizeForOriginExcludingCacheEPKNS_14SecurityOriginEPNS_16ApplicationCacheERx 1473 1477 __ZN7WebCore23ApplicationCacheStorage5emptyEv 1474 1478 __ZNK7WebCore23ApplicationCacheStorage11maximumSizeEv -
trunk/WebCore/loader/EmptyClients.h
r64389 r64400 29 29 30 30 #include "ChromeClient.h" 31 #include "Console.h" 31 32 #include "ContextMenuClient.h" 32 #include "Console.h"33 33 #include "DocumentLoader.h" 34 34 #include "DragClient.h" … … 142 142 #if ENABLE(OFFLINE_WEB_APPLICATIONS) 143 143 virtual void reachedMaxAppCacheSize(int64_t) { } 144 virtual void reachedApplicationCacheOriginQuota(SecurityOrigin*) { } 144 145 #endif 145 146 -
trunk/WebCore/loader/appcache/ApplicationCacheGroup.cpp
r64399 r64400 72 72 , m_loadedSize(0) 73 73 , m_availableSpaceInQuota(ApplicationCacheStorage::unknownQuota()) 74 , m_originQuotaReached(false) 74 75 { 75 76 } … … 625 626 if (m_availableSpaceInQuota < m_loadedSize) { 626 627 m_currentResource = 0; 627 cacheUpdateFailed ();628 cacheUpdateFailedDueToOriginQuota(); 628 629 return; 629 630 } … … 793 794 } 794 795 796 void ApplicationCacheGroup::didReachOriginQuota(PassRefPtr<Frame> frame) 797 { 798 // Inform the client the origin quota has been reached, 799 // they may decide to increase the quota. 800 frame->page()->chrome()->client()->reachedApplicationCacheOriginQuota(m_origin.get()); 801 } 802 795 803 void ApplicationCacheGroup::cacheUpdateFailed() 796 804 { … … 801 809 m_completionType = Failure; 802 810 deliverDelayedMainResources(); 811 } 812 813 void ApplicationCacheGroup::cacheUpdateFailedDueToOriginQuota() 814 { 815 if (!m_originQuotaReached) { 816 m_originQuotaReached = true; 817 scheduleReachedOriginQuotaCallback(); 818 } 819 820 cacheUpdateFailed(); 803 821 } 804 822 … … 895 913 // Fire the success event. 896 914 postListenerTask(isUpgradeAttempt ? ApplicationCacheHost::UPDATEREADY_EVENT : ApplicationCacheHost::CACHED_EVENT, m_associatedDocumentLoaders); 915 // It is clear that the origin quota was not reached, so clear the flag if it was set. 916 m_originQuotaReached = false; 897 917 } else { 898 918 if (failureReason == ApplicationCacheStorage::OriginQuotaReached) { … … 900 920 if (oldNewestCache) 901 921 setNewestCache(oldNewestCache.release()); 902 cacheUpdateFailed ();922 cacheUpdateFailedDueToOriginQuota(); 903 923 return; 904 924 } … … 1060 1080 }; 1061 1081 1082 class OriginQuotaReachedCallbackTimer: public TimerBase { 1083 public: 1084 OriginQuotaReachedCallbackTimer(ApplicationCacheGroup* cacheGroup, Frame* frame) 1085 : m_cacheGroup(cacheGroup) 1086 , m_frame(frame) 1087 { 1088 } 1089 1090 private: 1091 virtual void fired() 1092 { 1093 m_cacheGroup->didReachOriginQuota(m_frame.release()); 1094 delete this; 1095 } 1096 1097 ApplicationCacheGroup* m_cacheGroup; 1098 RefPtr<Frame> m_frame; 1099 }; 1100 1062 1101 void ApplicationCacheGroup::scheduleReachedMaxAppCacheSizeCallback() 1063 1102 { 1064 1103 ASSERT(isMainThread()); 1065 1104 ChromeClientCallbackTimer* timer = new ChromeClientCallbackTimer(this); 1105 timer->startOneShot(0); 1106 // The timer will delete itself once it fires. 1107 } 1108 1109 void ApplicationCacheGroup::scheduleReachedOriginQuotaCallback() 1110 { 1111 ASSERT(isMainThread()); 1112 RefPtr<Frame> frameProtector = m_frame; 1113 OriginQuotaReachedCallbackTimer* timer = new OriginQuotaReachedCallbackTimer(this, frameProtector.get()); 1066 1114 timer->startOneShot(0); 1067 1115 // The timer will delete itself once it fires. -
trunk/WebCore/loader/appcache/ApplicationCacheGroup.h
r64398 r64400 101 101 102 102 void scheduleReachedMaxAppCacheSizeCallback(); 103 void scheduleReachedOriginQuotaCallback(); 103 104 104 105 PassRefPtr<ResourceHandle> createResourceHandle(const KURL&, ApplicationCacheResource* newestCachedResource); … … 120 121 void didFinishLoadingManifest(); 121 122 void didReachMaxAppCacheSize(); 123 void didReachOriginQuota(PassRefPtr<Frame> frame); 122 124 123 125 void startLoadingEntry(); … … 125 127 void checkIfLoadIsComplete(); 126 128 void cacheUpdateFailed(); 129 void cacheUpdateFailedDueToOriginQuota(); 127 130 void manifestNotFound(); 128 131 … … 200 203 int64_t m_loadedSize; 201 204 int64_t m_availableSpaceInQuota; 205 bool m_originQuotaReached; 202 206 203 207 friend class ChromeClientCallbackTimer; 208 friend class OriginQuotaReachedCallbackTimer; 204 209 }; 205 210 -
trunk/WebCore/loader/appcache/ApplicationCacheStorage.cpp
r64399 r64400 444 444 } 445 445 446 bool ApplicationCacheStorage::usageForOrigin(const SecurityOrigin* origin, int64_t& usage) 447 { 448 // If an Origins record doesn't exist, then the SUM will be null, 449 // which will become 0, as expected, when converting to a number. 450 SQLiteStatement statement(m_database, "SELECT SUM(Caches.size)" 451 " FROM CacheGroups" 452 " INNER JOIN Origins ON CacheGroups.origin = Origins.origin" 453 " INNER JOIN Caches ON CacheGroups.id = Caches.cacheGroup" 454 " WHERE Origins.origin=?"); 455 if (statement.prepare() != SQLResultOk) 456 return false; 457 458 statement.bindText(1, origin->databaseIdentifier()); 459 int result = statement.step(); 460 461 if (result == SQLResultRow) { 462 usage = statement.getColumnInt64(0); 463 return true; 464 } 465 466 LOG_ERROR("Could not get the quota of an origin, error \"%s\"", m_database.lastErrorMsg()); 467 return false; 468 } 469 446 470 bool ApplicationCacheStorage::remainingSizeForOriginExcludingCache(const SecurityOrigin* origin, ApplicationCache* cache, int64_t& remainingSize) 447 471 { … … 499 523 return false; 500 524 525 if (!ensureOriginRecord(origin)) 526 return false; 527 501 528 SQLiteStatement updateStatement(m_database, "UPDATE Origins SET quota=? WHERE origin=?"); 502 529 if (updateStatement.prepare() != SQLResultOk) … … 626 653 return false; 627 654 628 String originIdentifier = group->origin()->databaseIdentifier();629 630 655 statement.bindInt64(1, urlHostHash(group->manifestURL())); 631 656 statement.bindText(2, group->manifestURL()); 632 statement.bindText(3, originIdentifier);657 statement.bindText(3, group->origin()->databaseIdentifier()); 633 658 634 659 if (!executeStatement(statement)) 635 660 return false; 636 661 637 // Create Origin if needed. 638 { 639 SQLiteStatement insertOriginStatement(m_database, "INSERT INTO Origins (origin, quota) VALUES (?, ?)"); 640 if (insertOriginStatement.prepare() != SQLResultOk) 641 return false; 642 643 insertOriginStatement.bindText(1, originIdentifier); 644 insertOriginStatement.bindInt64(2, m_defaultOriginQuota); 645 if (!executeStatement(insertOriginStatement)) 646 return false; 647 } 662 if (!ensureOriginRecord(group->origin())) 663 return false; 648 664 649 665 group->setStorageID(static_cast<unsigned>(m_database.lastInsertRowID())); … … 859 875 } 860 876 877 bool ApplicationCacheStorage::ensureOriginRecord(const SecurityOrigin* origin) 878 { 879 SQLiteStatement insertOriginStatement(m_database, "INSERT INTO Origins (origin, quota) VALUES (?, ?)"); 880 if (insertOriginStatement.prepare() != SQLResultOk) 881 return false; 882 883 insertOriginStatement.bindText(1, origin->databaseIdentifier()); 884 insertOriginStatement.bindInt64(2, m_defaultOriginQuota); 885 if (!executeStatement(insertOriginStatement)) 886 return false; 887 888 return true; 889 } 890 861 891 bool ApplicationCacheStorage::storeNewestCache(ApplicationCacheGroup* group, ApplicationCache* oldCache, FailureReason& failureReason) 862 892 { -
trunk/WebCore/loader/appcache/ApplicationCacheStorage.h
r64399 r64400 64 64 int64_t defaultOriginQuota() const { return m_defaultOriginQuota; } 65 65 void setDefaultOriginQuota(int64_t quota); 66 bool usageForOrigin(const SecurityOrigin*, int64_t& usage); 66 67 bool quotaForOrigin(const SecurityOrigin*, int64_t& quota); 67 68 bool remainingSizeForOriginExcludingCache(const SecurityOrigin*, ApplicationCache*, int64_t& remainingSize); … … 106 107 bool store(ApplicationCacheResource*, unsigned cacheStorageID); 107 108 109 bool ensureOriginRecord(const SecurityOrigin*); 110 108 111 void loadManifestHostHashes(); 109 112 -
trunk/WebCore/page/ChromeClient.h
r64389 r64400 54 54 class Node; 55 55 class Page; 56 class SecurityOrigin; 56 57 class String; 57 58 class Widget; … … 168 169 // old caches. 169 170 virtual void reachedMaxAppCacheSize(int64_t spaceNeeded) = 0; 171 172 // Callback invoked when the application cache origin quota is reached. This 173 // means that the resources attempting to be cached via the manifest are 174 // more than allowed on this origin. This callback allows the chrome client 175 // to take action, such as prompting the user to ask to increase the quota 176 // for this origin. 177 virtual void reachedApplicationCacheOriginQuota(SecurityOrigin* origin) = 0; 170 178 #endif 171 179 -
trunk/WebKit/ChangeLog
r64357 r64400 1 2010-07-30 Joseph Pecoraro <joepeck@webkit.org> 2 3 Reviewed by David Kilzer. 4 5 Limit ApplicationCache Total and Per-Origin Storage Capacity (Quotas) 6 https://bugs.webkit.org/show_bug.cgi?id=40627 7 8 * WebKit.xcodeproj/project.pbxproj: 9 * efl/WebCoreSupport/ChromeClientEfl.cpp: 10 (WebCore::ChromeClientEfl::reachedApplicationCacheOriginQuota): 11 * efl/WebCoreSupport/ChromeClientEfl.h: 12 1 13 2010-07-30 Rafael Antognolli <antognolli@profusion.mobi> 2 14 -
trunk/WebKit/WebKit.xcodeproj/project.pbxproj
r63417 r64400 94 94 4BF99F900AE050BC00815C2B /* WebEditorClient.h in Headers */ = {isa = PBXBuildFile; fileRef = 4BF99F8E0AE050BC00815C2B /* WebEditorClient.h */; settings = {ATTRIBUTES = (); }; }; 95 95 4BF99F910AE050BC00815C2B /* WebEditorClient.mm in Sources */ = {isa = PBXBuildFile; fileRef = 4BF99F8F0AE050BC00815C2B /* WebEditorClient.mm */; }; 96 51079D170CED11B00077247D /* WebSecurityOrigin.mm in Sources */ = {isa = PBXBuildFile; fileRef = 51079D140CED11B00077247D /* WebSecurityOrigin.mm */; };97 51079D180CED11B00077247D /* WebSecurityOriginInternal.h in Headers */ = {isa = PBXBuildFile; fileRef = 51079D150CED11B00077247D /* WebSecurityOriginInternal.h */; };98 51079D190CED11B00077247D /* WebSecurityOriginPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 51079D160CED11B00077247D /* WebSecurityOriginPrivate.h */; settings = {ATTRIBUTES = (Private, ); }; };99 96 511F3FD50CECC88F00852565 /* WebDatabaseManager.mm in Sources */ = {isa = PBXBuildFile; fileRef = 511F3FD10CECC88F00852565 /* WebDatabaseManager.mm */; }; 100 97 511F3FD60CECC88F00852565 /* WebDatabaseManagerPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 511F3FD20CECC88F00852565 /* WebDatabaseManagerPrivate.h */; settings = {ATTRIBUTES = (Private, ); }; }; … … 317 314 93EB178F09F88D510091F8FF /* WebSystemInterface.h in Headers */ = {isa = PBXBuildFile; fileRef = 93EB178E09F88D510091F8FF /* WebSystemInterface.h */; }; 318 315 93FDE9330D79CAF30074F029 /* WebHistoryInternal.h in Headers */ = {isa = PBXBuildFile; fileRef = 93FDE9320D79CAF30074F029 /* WebHistoryInternal.h */; }; 316 A5DEFC0A11D5331C00885273 /* WebSecurityOrigin.mm in Sources */ = {isa = PBXBuildFile; fileRef = A5DEFC0711D5331C00885273 /* WebSecurityOrigin.mm */; }; 317 A5DEFC0B11D5331C00885273 /* WebSecurityOriginInternal.h in Headers */ = {isa = PBXBuildFile; fileRef = A5DEFC0811D5331C00885273 /* WebSecurityOriginInternal.h */; }; 318 A5DEFC0C11D5331C00885273 /* WebSecurityOriginPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = A5DEFC0911D5331C00885273 /* WebSecurityOriginPrivate.h */; }; 319 A5DEFC0F11D5343E00885273 /* WebDatabaseSecurityOrigin.h in Headers */ = {isa = PBXBuildFile; fileRef = A5DEFC0D11D5343E00885273 /* WebDatabaseSecurityOrigin.h */; }; 320 A5DEFC1011D5343E00885273 /* WebDatabaseSecurityOrigin.mm in Sources */ = {isa = PBXBuildFile; fileRef = A5DEFC0E11D5343E00885273 /* WebDatabaseSecurityOrigin.mm */; }; 321 A5DEFC1311D5344B00885273 /* WebApplicationCacheSecurityOrigin.h in Headers */ = {isa = PBXBuildFile; fileRef = A5DEFC1111D5344B00885273 /* WebApplicationCacheSecurityOrigin.h */; }; 322 A5DEFC1411D5344B00885273 /* WebApplicationCacheSecurityOrigin.mm in Sources */ = {isa = PBXBuildFile; fileRef = A5DEFC1211D5344B00885273 /* WebApplicationCacheSecurityOrigin.mm */; }; 319 323 A70936AF0B5608DC00CDB48E /* WebDragClient.h in Headers */ = {isa = PBXBuildFile; fileRef = A70936AD0B5608DC00CDB48E /* WebDragClient.h */; }; 320 324 A70936B00B5608DC00CDB48E /* WebDragClient.mm in Sources */ = {isa = PBXBuildFile; fileRef = A70936AE0B5608DC00CDB48E /* WebDragClient.mm */; }; … … 473 477 4BF99F8E0AE050BC00815C2B /* WebEditorClient.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = WebEditorClient.h; sourceTree = "<group>"; }; 474 478 4BF99F8F0AE050BC00815C2B /* WebEditorClient.mm */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.objcpp; path = WebEditorClient.mm; sourceTree = "<group>"; }; 475 51079D140CED11B00077247D /* WebSecurityOrigin.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WebSecurityOrigin.mm; sourceTree = "<group>"; };476 51079D150CED11B00077247D /* WebSecurityOriginInternal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebSecurityOriginInternal.h; sourceTree = "<group>"; };477 51079D160CED11B00077247D /* WebSecurityOriginPrivate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebSecurityOriginPrivate.h; sourceTree = "<group>"; };478 479 511F3FD10CECC88F00852565 /* WebDatabaseManager.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WebDatabaseManager.mm; sourceTree = "<group>"; }; 479 480 511F3FD20CECC88F00852565 /* WebDatabaseManagerPrivate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebDatabaseManagerPrivate.h; sourceTree = "<group>"; }; … … 608 609 9CE1F8A302A5C6F30ECA2ACD /* WebImageRendererFactory.m */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 4; lastKnownFileType = sourcecode.c.objc; path = WebImageRendererFactory.m; sourceTree = "<group>"; tabWidth = 8; usesTabs = 0; }; 609 610 9CF0E249021361B00ECA16EA /* WebFramePrivate.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 4; lastKnownFileType = sourcecode.c.h; path = WebFramePrivate.h; sourceTree = "<group>"; tabWidth = 8; usesTabs = 0; }; 611 A5DEFC0711D5331C00885273 /* WebSecurityOrigin.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WebSecurityOrigin.mm; sourceTree = "<group>"; }; 612 A5DEFC0811D5331C00885273 /* WebSecurityOriginInternal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebSecurityOriginInternal.h; sourceTree = "<group>"; }; 613 A5DEFC0911D5331C00885273 /* WebSecurityOriginPrivate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebSecurityOriginPrivate.h; sourceTree = "<group>"; }; 614 A5DEFC0D11D5343E00885273 /* WebDatabaseSecurityOrigin.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebDatabaseSecurityOrigin.h; sourceTree = "<group>"; }; 615 A5DEFC0E11D5343E00885273 /* WebDatabaseSecurityOrigin.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WebDatabaseSecurityOrigin.mm; sourceTree = "<group>"; }; 616 A5DEFC1111D5344B00885273 /* WebApplicationCacheSecurityOrigin.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebApplicationCacheSecurityOrigin.h; sourceTree = "<group>"; }; 617 A5DEFC1211D5344B00885273 /* WebApplicationCacheSecurityOrigin.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WebApplicationCacheSecurityOrigin.mm; sourceTree = "<group>"; }; 610 618 A70936AD0B5608DC00CDB48E /* WebDragClient.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = WebDragClient.h; sourceTree = "<group>"; }; 611 619 A70936AE0B5608DC00CDB48E /* WebDragClient.mm */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.objcpp; path = WebDragClient.mm; sourceTree = "<group>"; }; … … 1013 1021 51AEDEF00CECF45700854328 /* WebDatabaseManagerInternal.h */, 1014 1022 511F3FD20CECC88F00852565 /* WebDatabaseManagerPrivate.h */, 1023 A5DEFC0D11D5343E00885273 /* WebDatabaseSecurityOrigin.h */, 1024 A5DEFC0E11D5343E00885273 /* WebDatabaseSecurityOrigin.mm */, 1015 1025 511F3FD30CECC88F00852565 /* WebDatabaseTrackerClient.h */, 1016 1026 511F3FD40CECC88F00852565 /* WebDatabaseTrackerClient.mm */, 1017 51079D140CED11B00077247D /* WebSecurityOrigin.mm */,1018 51079D150CED11B00077247D /* WebSecurityOriginInternal.h */,1019 51079D160CED11B00077247D /* WebSecurityOriginPrivate.h */,1020 1027 ); 1021 1028 name = Storage; … … 1232 1239 B68049710FFBCEC1009F7F62 /* WebApplicationCache.h */, 1233 1240 B68049720FFBCEC1009F7F62 /* WebApplicationCache.mm */, 1241 A5DEFC1111D5344B00885273 /* WebApplicationCacheSecurityOrigin.h */, 1242 A5DEFC1211D5344B00885273 /* WebApplicationCacheSecurityOrigin.mm */, 1234 1243 51CBFCAC0D10E6C5002DBF51 /* WebCachedFramePlatformData.h */, 1235 1244 14D8252D0AF955090004F057 /* WebChromeClient.h */, … … 1261 1270 0A2D87FB107AF52B00CDDEE3 /* WebPluginHalterClient.h */, 1262 1271 0A2D87FC107AF52B00CDDEE3 /* WebPluginHalterClient.mm */, 1272 A5DEFC0711D5331C00885273 /* WebSecurityOrigin.mm */, 1273 A5DEFC0811D5331C00885273 /* WebSecurityOriginInternal.h */, 1274 A5DEFC0911D5331C00885273 /* WebSecurityOriginPrivate.h */, 1263 1275 93EB178E09F88D510091F8FF /* WebSystemInterface.h */, 1264 1276 93EB178C09F88D460091F8FF /* WebSystemInterface.mm */, … … 1536 1548 C0B1F7E810AC8E3100C925D9 /* WebScriptWorld.h in Headers */, 1537 1549 C0B1F7EA10AC8E3100C925D9 /* WebScriptWorldInternal.h in Headers */, 1538 51079D180CED11B00077247D /* WebSecurityOriginInternal.h in Headers */,1539 51079D190CED11B00077247D /* WebSecurityOriginPrivate.h in Headers */,1540 1550 BC26C69E10B743F400B687ED /* WebSerializedJSValue.h in Headers */, 1541 1551 939810270824BF01008DF038 /* WebStringTruncator.h in Headers */, … … 1558 1568 0FD3B0F81076C3F700039B96 /* WebWindowAnimation.h in Headers */, 1559 1569 41F4484F10338E8C0030E55E /* WebWorkersPrivate.h in Headers */, 1570 A5DEFC0B11D5331C00885273 /* WebSecurityOriginInternal.h in Headers */, 1571 A5DEFC0C11D5331C00885273 /* WebSecurityOriginPrivate.h in Headers */, 1572 A5DEFC0F11D5343E00885273 /* WebDatabaseSecurityOrigin.h in Headers */, 1573 A5DEFC1311D5344B00885273 /* WebApplicationCacheSecurityOrigin.h in Headers */, 1560 1574 ); 1561 1575 runOnlyForDeploymentPostprocessing = 0; … … 1900 1914 C0167BF90D7F5DD00028696E /* WebScriptDebugger.mm in Sources */, 1901 1915 C0B1F7E910AC8E3100C925D9 /* WebScriptWorld.mm in Sources */, 1902 51079D170CED11B00077247D /* WebSecurityOrigin.mm in Sources */,1903 1916 BC26C6A510B7447A00B687ED /* WebSerializedJSValue.mm in Sources */, 1904 1917 939810CC0824BF01008DF038 /* WebStringTruncator.mm in Sources */, … … 1917 1930 0FD3B0F91076C3F700039B96 /* WebWindowAnimation.m in Sources */, 1918 1931 41F4485010338E8C0030E55E /* WebWorkersPrivate.mm in Sources */, 1932 A5DEFC0A11D5331C00885273 /* WebSecurityOrigin.mm in Sources */, 1933 A5DEFC1011D5343E00885273 /* WebDatabaseSecurityOrigin.mm in Sources */, 1934 A5DEFC1411D5344B00885273 /* WebApplicationCacheSecurityOrigin.mm in Sources */, 1919 1935 ); 1920 1936 runOnlyForDeploymentPostprocessing = 0; -
trunk/WebKit/chromium/ChangeLog
r64391 r64400 1 2010-07-30 Joseph Pecoraro <joepeck@webkit.org> 2 3 Reviewed by David Kilzer. 4 5 Limit ApplicationCache Total and Per-Origin Storage Capacity (Quotas) 6 https://bugs.webkit.org/show_bug.cgi?id=40627 7 8 * src/ChromeClientImpl.cpp: 9 (WebKit::ChromeClientImpl::reachedApplicationCacheOriginQuota): 10 * src/ChromeClientImpl.h: 11 1 12 2010-07-30 James Robinson <jamesr@chromium.org> 2 13 -
trunk/WebKit/chromium/src/ChromeClientImpl.cpp
r64391 r64400 57 57 #include "PopupMenuChromium.h" 58 58 #include "ScriptController.h" 59 #include "SecurityOrigin.h" 59 60 #include "WebGeolocationService.h" 60 61 #if USE(V8) … … 580 581 ASSERT_NOT_REACHED(); 581 582 } 583 584 void ChromeClientImpl::reachedApplicationCacheOriginQuota(SecurityOrigin*) 585 { 586 ASSERT_NOT_REACHED(); 587 } 582 588 #endif 583 589 -
trunk/WebKit/chromium/src/ChromeClientImpl.h
r64391 r64400 119 119 #if ENABLE(OFFLINE_WEB_APPLICATIONS) 120 120 virtual void reachedMaxAppCacheSize(int64_t spaceNeeded); 121 virtual void reachedApplicationCacheOriginQuota(WebCore::SecurityOrigin*); 121 122 #endif 122 123 #if ENABLE(NOTIFICATIONS) -
trunk/WebKit/efl/WebCoreSupport/ChromeClientEfl.cpp
r63978 r64400 48 48 #include "NotImplemented.h" 49 49 #include "PlatformString.h" 50 #include "SecurityOrigin.h" 50 51 #include "ViewportArguments.h" 51 52 #include "WindowFeatures.h" … … 377 378 notImplemented(); 378 379 } 380 381 void ChromeClientEfl::reachedApplicationCacheOriginQuota(SecurityOrigin*) 382 { 383 notImplemented(); 384 } 379 385 #endif 380 386 -
trunk/WebKit/efl/WebCoreSupport/ChromeClientEfl.h
r63339 r64400 112 112 #if ENABLE(OFFLINE_WEB_APPLICATIONS) 113 113 virtual void reachedMaxAppCacheSize(int64_t spaceNeeded); 114 virtual void reachedApplicationCacheOriginQuota(SecurityOrigin*); 114 115 #endif 115 116 -
trunk/WebKit/gtk/ChangeLog
r64208 r64400 1 2010-07-30 Joseph Pecoraro <joepeck@webkit.org> 2 3 Reviewed by David Kilzer. 4 5 Limit ApplicationCache Total and Per-Origin Storage Capacity (Quotas) 6 https://bugs.webkit.org/show_bug.cgi?id=40627 7 8 * WebCoreSupport/ChromeClientGtk.cpp: 9 (WebKit::ChromeClient::reachedApplicationCacheOriginQuota): 10 * WebCoreSupport/ChromeClientGtk.h: 11 1 12 2010-07-26 Steve Block <steveblock@google.com> 2 13 -
trunk/WebKit/gtk/WebCoreSupport/ChromeClientGtk.cpp
r63339 r64400 31 31 #include "GtkVersioning.h" 32 32 #include "IntRect.h" 33 #include "PlatformString.h"34 33 #include "HitTestResult.h" 35 34 #include "Icon.h" 36 35 #include "KURL.h" 36 #include "PlatformString.h" 37 #include "SecurityOrigin.h" 37 38 #include "webkitgeolocationpolicydecision.h" 38 39 #include "webkitwebview.h" … … 548 549 { 549 550 // FIXME: Free some space. 551 notImplemented(); 552 } 553 554 void ChromeClient::reachedApplicationCacheOriginQuota(SecurityOrigin*) 555 { 550 556 notImplemented(); 551 557 } -
trunk/WebKit/gtk/WebCoreSupport/ChromeClientGtk.h
r63339 r64400 109 109 #if ENABLE(OFFLINE_WEB_APPLICATIONS) 110 110 virtual void reachedMaxAppCacheSize(int64_t spaceNeeded); 111 virtual void reachedApplicationCacheOriginQuota(WebCore::SecurityOrigin*); 111 112 #endif 112 113 virtual void runOpenPanel(WebCore::Frame*, PassRefPtr<WebCore::FileChooser>); -
trunk/WebKit/haiku/ChangeLog
r63602 r64400 1 2010-07-30 Joseph Pecoraro <joepeck@webkit.org> 2 3 Reviewed by David Kilzer. 4 5 Limit ApplicationCache Total and Per-Origin Storage Capacity (Quotas) 6 https://bugs.webkit.org/show_bug.cgi?id=40627 7 8 * WebCoreSupport/ChromeClientHaiku.cpp: 9 (WebCore::ChromeClientWx::reachedApplicationCacheOriginQuota): 10 * WebCoreSupport/ChromeClientHaiku.h: 11 1 12 2010-07-16 Zhe Su <suzhe@chromium.org> 2 13 -
trunk/WebKit/haiku/WebCoreSupport/ChromeClientHaiku.cpp
r63339 r64400 36 36 #include "NotImplemented.h" 37 37 #include "PlatformString.h" 38 #include "SecurityOrigin.h" 38 39 39 40 #include <Alert.h> … … 343 344 #if ENABLE(OFFLINE_WEB_APPLICATIONS) 344 345 void ChromeClientWx::reachedMaxAppCacheSize(int64_t spaceNeeded) 346 { 347 notImplemented(); 348 } 349 350 void ChromeClientWx::reachedApplicationCacheOriginQuota(SecurityOrigin*) 345 351 { 346 352 notImplemented(); -
trunk/WebKit/haiku/WebCoreSupport/ChromeClientHaiku.h
r63339 r64400 131 131 #if ENABLE(OFFLINE_WEB_APPLICATIONS) 132 132 virtual void reachedMaxAppCacheSize(int64_t spaceNeeded); 133 virtual void reachedApplicationCacheOriginQuota(SecurityOrigin*); 133 134 #endif 134 135 -
trunk/WebKit/mac/ChangeLog
r64397 r64400 1 2010-07-30 Joseph Pecoraro <joepeck@webkit.org> 2 3 Reviewed by David Kilzer. 4 5 Limit ApplicationCache Total and Per-Origin Storage Capacity (Quotas) 6 https://bugs.webkit.org/show_bug.cgi?id=40627 7 8 Part 4 - Client Notification when the Quota is Reached 9 10 Notify the WebKit client when the per-origin quota is reached 11 via a delegate method reachedApplicationCacheOriginQuota. 12 13 Refactor the WebSecurityOrigin class to be generic enough to 14 allow quota management of both Databases or Application Caches 15 via subclasses. 16 17 * Storage/WebDatabaseSecurityOrigin.h: Added. 18 * Storage/WebDatabaseSecurityOrigin.mm: Added. 19 (-[WebDatabaseSecurityOrigin quota]): 20 (-[WebDatabaseSecurityOrigin setQuota:]): 21 * WebCoreSupport/WebApplicationCacheSecurityOrigin.h: Added. 22 * WebCoreSupport/WebApplicationCacheSecurityOrigin.mm: Added. 23 (-[WebApplicationCacheSecurityOrigin quota]): 24 (-[WebApplicationCacheSecurityOrigin setQuota:]): 25 * Storage/WebSecurityOrigin.mm: Removed. (Moved to WebCoreSupport) 26 * Storage/WebSecurityOriginPrivate.h: Removed. (Moved to WebCoreSupport) 27 * WebCoreSupport/WebSecurityOrigin.mm: Added. 28 (-[WebSecurityOrigin usage]): to be implemented by subclasses. 29 (-[WebSecurityOrigin quota]): to be implemented by subclasses. 30 (-[WebSecurityOrigin setQuota:]): to be implemented by subclasses. 31 * WebCoreSupport/WebSecurityOriginInternal.h: Renamed from WebKit/mac/Storage/WebSecurityOriginInternal.h. 32 * WebCoreSupport/WebSecurityOriginPrivate.h: Added. 33 34 Turn the notification into a WebUI Delegate to call. Following 35 the example of Databases. 36 37 * DefaultDelegates/WebDefaultUIDelegate.m: 38 (-[WebDefaultUIDelegate webView:exceededApplicationCacheOriginQuotaForSecurityOrigin:]): 39 * WebCoreSupport/WebChromeClient.h: 40 * WebCoreSupport/WebChromeClient.mm: 41 (WebChromeClient::exceededDatabaseQuota): use the Databases Security Origin subclass. 42 (WebChromeClient::reachedApplicationCacheOriginQuota): use the Application Cache Security Origin subclass. 43 * WebView/WebUIDelegatePrivate.h: 44 1 45 2010-07-30 Joseph Pecoraro <joepeck@webkit.org> 2 46 -
trunk/WebKit/mac/DefaultDelegates/WebDefaultUIDelegate.m
r40363 r64400 228 228 } 229 229 230 - (void)webView:(WebView *)sender exceededApplicationCacheOriginQuotaForSecurityOrigin:(WebSecurityOrigin *)origin 231 { 232 } 233 230 234 - (BOOL)webView:(WebView *)sender shouldReplaceUploadFile:(NSString *)path usingGeneratedFilename:(NSString **)filename 231 235 { -
trunk/WebKit/mac/WebCoreSupport/WebApplicationCache.h
r64397 r64400 26 26 #import <Foundation/Foundation.h> 27 27 28 @interface WebApplicationCache: NSObject { 29 } 28 @interface WebApplicationCache: NSObject 30 29 31 30 + (long long)maximumSize; -
trunk/WebKit/mac/WebCoreSupport/WebChromeClient.h
r63339 r64400 118 118 #if ENABLE(OFFLINE_WEB_APPLICATIONS) 119 119 virtual void reachedMaxAppCacheSize(int64_t spaceNeeded); 120 virtual void reachedApplicationCacheOriginQuota(WebCore::SecurityOrigin*); 120 121 #endif 121 122 virtual void populateVisitedLinks(); -
trunk/WebKit/mac/WebCoreSupport/WebChromeClient.mm
r63339 r64400 31 31 32 32 #import "DOMNodeInternal.h" 33 #import "WebApplicationCacheSecurityOrigin.h" 34 #import "WebDatabaseSecurityOrigin.h" 33 35 #import "WebDefaultUIDelegate.h" 34 36 #import "WebDelegateImplementationCaching.h" … … 554 556 BEGIN_BLOCK_OBJC_EXCEPTIONS; 555 557 556 Web SecurityOrigin *webOrigin = [[WebSecurityOrigin alloc] _initWithWebCoreSecurityOrigin:frame->document()->securityOrigin()];558 WebDatabaseSecurityOrigin *webOrigin = [[WebDatabaseSecurityOrigin alloc] _initWithWebCoreSecurityOrigin:frame->document()->securityOrigin()]; 557 559 // FIXME: remove this workaround once shipping Safari has the necessary delegate implemented. 558 560 if (WKAppVersionCheckLessThan(@"com.apple.Safari", -1, 3.1)) { … … 571 573 { 572 574 // FIXME: Free some space. 575 } 576 577 void WebChromeClient::reachedApplicationCacheOriginQuota(SecurityOrigin* origin) 578 { 579 BEGIN_BLOCK_OBJC_EXCEPTIONS; 580 581 WebApplicationCacheSecurityOrigin *webOrigin = [[WebApplicationCacheSecurityOrigin alloc] _initWithWebCoreSecurityOrigin:origin]; 582 CallUIDelegate(m_webView, @selector(webView:exceededApplicationCacheOriginQuotaForSecurityOrigin:), webOrigin); 583 [webOrigin release]; 584 585 END_BLOCK_OBJC_EXCEPTIONS; 573 586 } 574 587 #endif -
trunk/WebKit/mac/WebCoreSupport/WebSecurityOrigin.mm
r64399 r64400 1 1 /* 2 * Copyright (C) 2007 Apple Inc. All rights reserved.2 * Copyright (C) 2007, 2010 Apple Inc. All rights reserved. 3 3 * 4 4 * Redistribution and use in source and binary forms, with or without … … 29 29 #import "WebSecurityOriginInternal.h" 30 30 31 #import <WebCore/DatabaseTracker.h>32 31 #import <WebCore/KURL.h> 33 32 #import <WebCore/SecurityOrigin.h> … … 70 69 } 71 70 72 - (unsigned long long)usage 71 // Meant to be implemented in a subclass. 72 - (long long)usage 73 73 { 74 #if ENABLE(DATABASE)75 return DatabaseTracker::tracker().usageForOrigin(reinterpret_cast<SecurityOrigin*>(_private));76 #else77 74 return 0; 78 #endif79 75 } 80 76 81 - (unsigned long long)quota 77 // Meant to be implemented in a subclass. 78 - (long long)quota 82 79 { 83 #if ENABLE(DATABASE)84 return DatabaseTracker::tracker().quotaForOrigin(reinterpret_cast<SecurityOrigin*>(_private));85 #else86 80 return 0; 87 #endif88 81 } 89 82 90 // Sets the storage quota (in bytes) 91 // If the quota is set to a value lower than the current usage, that quota will "stick" but no data will be purged to meet the new quota. 92 // This will simply prevent new data from being added to databases in that origin 93 - (void)setQuota:(unsigned long long)quota 83 // Meant to be implemented in a subclass. 84 - (void)setQuota:(long long)quota 94 85 { 95 #if ENABLE(DATABASE)96 DatabaseTracker::tracker().setQuota(reinterpret_cast<SecurityOrigin*>(_private), quota);97 #endif98 86 } 99 87 -
trunk/WebKit/mac/WebCoreSupport/WebSecurityOriginPrivate.h
r64399 r64400 38 38 - (NSString*)host; 39 39 40 // Returns zero if the port is the default port for the protocol, non-zero otherwise 40 // Returns zero if the port is the default port for the protocol, non-zero otherwise. 41 41 - (unsigned short)port; 42 42 43 // Returns the current total usage of all databases in this security origin in bytes 44 - (unsigned long long)usage; 43 // Meant to be implemented in a subclass. 44 // Returns the current total usage of all relevant items in this security origin in bytes. 45 - (long long)usage; 45 46 46 - (unsigned long long)quota; 47 // Sets the storage quota (in bytes) 48 // If the quota is set to a value lower than the current usage, that quota will "stick" but no data will be purged to meet the new quota. 49 // This will simply prevent new data from being added to databases in that origin 50 - (void)setQuota:(unsigned long long)quota; 47 // Meant to be implemented in a subclass. 48 // Returns the quota of this security origin in bytes. 49 - (long long)quota; 51 50 51 // Meant to be implemented in a subclass. 52 // Sets the storage quota in bytes. 53 - (void)setQuota:(long long)quota; 52 54 53 55 @end -
trunk/WebKit/mac/WebView/WebUIDelegatePrivate.h
r62451 r64400 1 1 /* 2 * Copyright (C) 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights reserved.2 * Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010 Apple Inc. All rights reserved. 3 3 * 4 4 * Redistribution and use in source and binary forms, with or without … … 126 126 - (void)webView:(WebView *)sender frame:(WebFrame *)frame exceededDatabaseQuotaForSecurityOrigin:(WebSecurityOrigin *)origin database:(NSString *)databaseIdentifier; 127 127 128 /*! 129 @method webView:exceededApplicationCacheOriginQuotaForSecurityOrigin: 130 @param sender The WebView sending the delegate method. 131 @param origin The security origin that needs a larger quota 132 @discussion This method is called when a page attempts to store more in the Application Cache 133 for an origin than was allowed by the quota (or default) set for the origin. This allows the 134 quota to be increased for the security origin. 135 */ 136 - (void)webView:(WebView *)sender exceededApplicationCacheOriginQuotaForSecurityOrigin:(WebSecurityOrigin *)origin; 137 128 138 - (WebView *)webView:(WebView *)sender createWebViewWithRequest:(NSURLRequest *)request windowFeatures:(NSDictionary *)features; 129 139 -
trunk/WebKit/qt/ChangeLog
r64284 r64400 1 2010-07-30 Joseph Pecoraro <joepeck@webkit.org> 2 3 Reviewed by David Kilzer. 4 5 Limit ApplicationCache Total and Per-Origin Storage Capacity (Quotas) 6 https://bugs.webkit.org/show_bug.cgi?id=40627 7 8 * WebCoreSupport/ChromeClientQt.cpp: 9 (WebCore::ChromeClientQt::reachedApplicationCacheOriginQuota): 10 * WebCoreSupport/ChromeClientQt.h: 11 1 12 2010-07-29 Alexis Menard <alexis.menard@nokia.com> 2 13 -
trunk/WebKit/qt/WebCoreSupport/ChromeClientQt.cpp
r63339 r64400 484 484 notImplemented(); 485 485 } 486 487 void ChromeClientQt::reachedApplicationCacheOriginQuota(SecurityOrigin*) 488 { 489 notImplemented(); 490 } 486 491 #endif 487 492 -
trunk/WebKit/qt/WebCoreSupport/ChromeClientQt.h
r63339 r64400 132 132 #if ENABLE(OFFLINE_WEB_APPLICATIONS) 133 133 virtual void reachedMaxAppCacheSize(int64_t spaceNeeded); 134 virtual void reachedApplicationCacheOriginQuota(SecurityOrigin*); 134 135 #endif 135 136 -
trunk/WebKit/win/ChangeLog
r64208 r64400 1 2010-07-30 Joseph Pecoraro <joepeck@webkit.org> 2 3 Reviewed by David Kilzer. 4 5 Limit ApplicationCache Total and Per-Origin Storage Capacity (Quotas) 6 https://bugs.webkit.org/show_bug.cgi?id=40627 7 8 * WebCoreSupport/WebChromeClient.cpp: 9 (WebChromeClient::reachedApplicationCacheOriginQuota): 10 * WebCoreSupport/WebChromeClient.h: 11 1 12 2010-07-26 Steve Block <steveblock@google.com> 2 13 -
trunk/WebKit/win/WebCoreSupport/WebChromeClient.cpp
r63339 r64400 56 56 #include <WebCore/NotImplemented.h> 57 57 #include <WebCore/Page.h> 58 #include <WebCore/SecurityOrigin.h> 58 59 #include <WebCore/WindowFeatures.h> 59 60 #pragma warning(pop) … … 616 617 { 617 618 // FIXME: Free some space. 619 notImplemented(); 620 } 621 622 void WebChromeClient::reachedApplicationCacheOriginQuota(SecurityOrigin*) 623 { 618 624 notImplemented(); 619 625 } -
trunk/WebKit/win/WebCoreSupport/WebChromeClient.h
r63339 r64400 119 119 #if ENABLE(OFFLINE_WEB_APPLICATIONS) 120 120 virtual void reachedMaxAppCacheSize(int64_t spaceNeeded); 121 virtual void reachedApplicationCacheOriginQuota(WebCore::SecurityOrigin*); 121 122 #endif 122 123 -
trunk/WebKit/wx/ChangeLog
r64288 r64400 1 2010-07-30 Joseph Pecoraro <joepeck@webkit.org> 2 3 Reviewed by David Kilzer. 4 5 Limit ApplicationCache Total and Per-Origin Storage Capacity (Quotas) 6 https://bugs.webkit.org/show_bug.cgi?id=40627 7 8 * WebKitSupport/ChromeClientWx.cpp: 9 (WebCore::ChromeClientWx::reachedApplicationCacheOriginQuota): 10 * WebKitSupport/ChromeClientWx.h: 11 1 12 2010-07-29 Kevin Ollivier <kevino@theolliviers.com> 2 13 -
trunk/WebKit/wx/WebKitSupport/ChromeClientWx.cpp
r63339 r64400 39 39 #include "NotImplemented.h" 40 40 #include "PlatformString.h" 41 #include "SecurityOrigin.h" 41 42 #include "WindowFeatures.h" 42 43 … … 430 431 notImplemented(); 431 432 } 433 434 void ChromeClientWx::reachedApplicationCacheOriginQuota(SecurityOrigin*) 435 { 436 notImplemented(); 437 } 432 438 #endif 433 439 -
trunk/WebKit/wx/WebKitSupport/ChromeClientWx.h
r63339 r64400 126 126 #if ENABLE(OFFLINE_WEB_APPLICATIONS) 127 127 virtual void reachedMaxAppCacheSize(int64_t spaceNeeded); 128 virtual void reachedApplicationCacheOriginQuota(SecurityOrigin*); 128 129 #endif 129 130 -
trunk/WebKit2/ChangeLog
r64396 r64400 1 2010-07-30 Joseph Pecoraro <joepeck@webkit.org> 2 3 Reviewed by David Kilzer. 4 5 Limit ApplicationCache Total and Per-Origin Storage Capacity (Quotas) 6 https://bugs.webkit.org/show_bug.cgi?id=40627 7 8 * WebProcess/WebCoreSupport/WebChromeClient.cpp: 9 (WebKit::WebChromeClient::reachedApplicationCacheOriginQuota): 10 * WebProcess/WebCoreSupport/WebChromeClient.h: 11 1 12 2010-07-30 Sam Weinig <sam@webkit.org> 2 13 -
trunk/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.cpp
r64247 r64400 41 41 #include <WebCore/Frame.h> 42 42 #include <WebCore/FrameLoader.h> 43 #include <WebCore/SecurityOrigin.h> 43 44 44 45 using namespace WebCore; … … 376 377 notImplemented(); 377 378 } 379 380 void WebChromeClient::reachedApplicationCacheOriginQuota(SecurityOrigin*) 381 { 382 notImplemented(); 383 } 378 384 #endif 379 385 -
trunk/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.h
r63339 r64400 124 124 #if ENABLE(OFFLINE_WEB_APPLICATIONS) 125 125 virtual void reachedMaxAppCacheSize(int64_t spaceNeeded); 126 virtual void reachedApplicationCacheOriginQuota(WebCore::SecurityOrigin*); 126 127 #endif 127 128
Note: See TracChangeset
for help on using the changeset viewer.