Index: src/prototype.h |
diff --git a/src/prototype.h b/src/prototype.h |
index 2be43e4fbdc9d0794e8670938f709d77652d0387..f54192e0fc29289760f750daba139b709488c227 100644 |
--- a/src/prototype.h |
+++ b/src/prototype.h |
@@ -63,6 +63,17 @@ class PrototypeIterator { |
~PrototypeIterator() {} |
+ const bool HasAccess() { |
+ // We can only perform access check in the handlified version of the |
+ // PrototypeIterator. |
+ DCHECK(!handle_.is_null()); |
+ if (handle_->IsAccessCheckNeeded()) { |
+ return isolate_->MayAccess(handle(isolate_->context()), |
+ Handle<JSObject>::cast(handle_)); |
+ } |
+ return true; |
+ } |
+ |
template <typename T = Object> |
T* GetCurrent() const { |
DCHECK(handle_.is_null()); |
@@ -72,6 +83,7 @@ class PrototypeIterator { |
template <typename T = Object> |
static Handle<T> GetCurrent(const PrototypeIterator& iterator) { |
DCHECK(!iterator.handle_.is_null()); |
+ DCHECK(iterator.object_ == NULL); |
return Handle<T>::cast(iterator.handle_); |
} |