OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2009 Google Inc. All rights reserved. | 2 * Copyright (C) 2009 Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
6 * met: | 6 * met: |
7 * | 7 * |
8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
(...skipping 15 matching lines...) Expand all Loading... |
26 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | 26 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
27 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | 27 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
28 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 28 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
29 */ | 29 */ |
30 | 30 |
31 #include "config.h" | 31 #include "config.h" |
32 #include "DOMDataStore.h" | 32 #include "DOMDataStore.h" |
33 | 33 |
34 #include "DOMWrapperMap.h" | 34 #include "DOMWrapperMap.h" |
35 #include "V8Binding.h" | 35 #include "V8Binding.h" |
36 #include "WebCoreMemoryInstrumentation.h" | |
37 #include <wtf/MainThread.h> | 36 #include <wtf/MainThread.h> |
38 | 37 |
39 namespace WebCore { | 38 namespace WebCore { |
40 | 39 |
41 DOMDataStore::DOMDataStore(WrapperWorldType type) | 40 DOMDataStore::DOMDataStore(WrapperWorldType type) |
42 : m_type(type) | 41 : m_type(type) |
43 , m_wrapperMap(v8::Isolate::GetCurrent()) // FIXME Don't call GetCurrent twi
ce. | 42 , m_wrapperMap(v8::Isolate::GetCurrent()) // FIXME Don't call GetCurrent twi
ce. |
44 { | 43 { |
45 V8PerIsolateData::current()->registerDOMDataStore(this); | 44 V8PerIsolateData::current()->registerDOMDataStore(this); |
46 } | 45 } |
(...skipping 20 matching lines...) Expand all Loading... |
67 | 66 |
68 if (DOMWrapperWorld::isolatedWorldsExist()) { | 67 if (DOMWrapperWorld::isolatedWorldsExist()) { |
69 DOMWrapperWorld* isolatedWorld = DOMWrapperWorld::isolatedWorld(v8::Cont
ext::GetEntered()); | 68 DOMWrapperWorld* isolatedWorld = DOMWrapperWorld::isolatedWorld(v8::Cont
ext::GetEntered()); |
70 if (UNLIKELY(!!isolatedWorld)) | 69 if (UNLIKELY(!!isolatedWorld)) |
71 return isolatedWorld->isolatedWorldDOMDataStore(); | 70 return isolatedWorld->isolatedWorldDOMDataStore(); |
72 } | 71 } |
73 | 72 |
74 return mainWorldStore(); | 73 return mainWorldStore(); |
75 } | 74 } |
76 | 75 |
77 void DOMDataStore::reportMemoryUsage(MemoryObjectInfo* memoryObjectInfo) const | |
78 { | |
79 MemoryClassInfo info(memoryObjectInfo, this, WebCoreMemoryTypes::Binding); | |
80 info.addMember(m_wrapperMap, "wrapperMap"); | |
81 } | |
82 | |
83 } // namespace WebCore | 76 } // namespace WebCore |
OLD | NEW |