Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1219)

Unified Diff: Source/modules/quota/NavigatorStorageQuota.h

Issue 158133003: Move quota module to oilpan (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Created 6 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: Source/modules/quota/NavigatorStorageQuota.h
diff --git a/Source/modules/quota/NavigatorStorageQuota.h b/Source/modules/quota/NavigatorStorageQuota.h
index 2875d33127fd0ecbc8e9d1cbeeeed3d00e349cb8..3a80b916cba6187c9de012d6600d92270bce2c32 100644
--- a/Source/modules/quota/NavigatorStorageQuota.h
+++ b/Source/modules/quota/NavigatorStorageQuota.h
@@ -32,18 +32,28 @@
#define NavigatorStorageQuota_h
#include "core/frame/DOMWindowProperty.h"
+#include "heap/Handle.h"
+#include "modules/quota/DeprecatedStorageQuota.h"
#include "platform/Supplementable.h"
namespace WebCore {
-class DeprecatedStorageQuota;
class Frame;
class Navigator;
class StorageQuota;
+#ifdef Navigator_IS_GARBAGE_COLLECTED
+#define RefPtrWillBePersistentThenMember RefPtrWillBeMember
+#else
+#define RefPtrWillBePersistentThenMember RefPtrWillBePersistent
+#endif
+
class NavigatorStorageQuota FINAL : public Supplement<Navigator>, public DOMWindowProperty {
+#ifdef Navigator_IS_GARBAGE_COLLECTED
+ DECLARE_GC_INFO;
+#endif
public:
- virtual ~NavigatorStorageQuota();
+ virtual ~NavigatorStorageQuota() { }
static NavigatorStorageQuota* from(Navigator*);
static StorageQuota* storageQuota(Navigator*);
@@ -54,15 +64,21 @@ public:
DeprecatedStorageQuota* webkitTemporaryStorage() const;
DeprecatedStorageQuota* webkitPersistentStorage() const;
+#ifdef Navigator_IS_GARBAGE_COLLECTED
+ void trace(Visitor*);
+#endif
+
private:
explicit NavigatorStorageQuota(Frame*);
static const char* supplementName();
- mutable RefPtr<StorageQuota> m_storageQuota;
- mutable RefPtr<DeprecatedStorageQuota> m_temporaryStorage;
- mutable RefPtr<DeprecatedStorageQuota> m_persistentStorage;
+ mutable RefPtrWillBePersistentThenMember<StorageQuota> m_storageQuota;
+ mutable RefPtrWillBePersistentThenMember<DeprecatedStorageQuota> m_temporaryStorage;
+ mutable RefPtrWillBePersistentThenMember<DeprecatedStorageQuota> m_persistentStorage;
};
} // namespace WebCore
+#undef RefPtrWillBePersistentThenMember
+
#endif // NavigatorStorageQuota_h

Powered by Google App Engine
This is Rietveld 408576698