Chromium Code Reviews| Index: third_party/WebKit/Source/bindings/core/v8/ScriptWrappableVisitor.h |
| diff --git a/third_party/WebKit/Source/bindings/core/v8/ScriptWrappableVisitor.h b/third_party/WebKit/Source/bindings/core/v8/ScriptWrappableVisitor.h |
| index 6c633518c8377530f9e5486a1f2e36f963112d58..5d98f73feb0d34a431ed85d5b6ca109f49084e82 100644 |
| --- a/third_party/WebKit/Source/bindings/core/v8/ScriptWrappableVisitor.h |
| +++ b/third_party/WebKit/Source/bindings/core/v8/ScriptWrappableVisitor.h |
| @@ -5,7 +5,6 @@ |
| #ifndef ScriptWrappableVisitor_h |
| #define ScriptWrappableVisitor_h |
| -#include "bindings/core/v8/ScopedPersistent.h" |
| #include "bindings/core/v8/ScriptWrappable.h" |
| #include "core/CoreExport.h" |
| #include "platform/RuntimeEnabledFeatures.h" |
| @@ -20,6 +19,8 @@ namespace blink { |
| class HeapObjectHeader; |
| template <typename T> |
| class Member; |
| +template <typename T> |
| +class raceWrapperScopedPersistent; |
|
Marcel Hlopko
2016/11/02 16:44:51
*T*raceWrapperScopedPersistent?
It's probably not
Michael Lippautz
2016/11/02 17:07:56
Was already fixed in latest upload. I swear everyt
|
| class WrapperMarkingData { |
| public: |
| @@ -103,6 +104,10 @@ class CORE_EXPORT ScriptWrappableVisitor : public WrapperVisitor, |
| static WrapperVisitor* currentVisitor(v8::Isolate*); |
| + static void writeBarrier( |
| + const void* srcObject, |
| + const TraceWrapperScopedPersistent<v8::Value>* dstObject); |
| + |
| template <typename T> |
| static void writeBarrier(const void* object, const Member<T> value) { |
| writeBarrier(object, value.get()); |
| @@ -162,10 +167,9 @@ class CORE_EXPORT ScriptWrappableVisitor : public WrapperVisitor, |
| NOTREACHED(); |
| } |
| - void traceWrappers(const ScopedPersistent<v8::Value>*) const override; |
| - void traceWrappers(const ScopedPersistent<v8::Object>*) const override; |
| - void markWrapper(const v8::PersistentBase<v8::Value>* handle) const; |
| - void markWrapper(const v8::PersistentBase<v8::Object>* handle) const override; |
| + void traceWrappers(const TraceWrapperScopedPersistent<v8::Value>* |
| + tracedPersistent) const override; |
| + void markWrapper(const v8::PersistentBase<v8::Value>* handle) const override; |
| void invalidateDeadObjectsInMarkingDeque(); |