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

Unified Diff: src/lookup.cc

Issue 2497213003: Merged: Squashed multiple commits. (Closed)
Patch Set: Created 4 years, 1 month 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
« no previous file with comments | « no previous file | src/property.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/lookup.cc
diff --git a/src/lookup.cc b/src/lookup.cc
index 54015d44c6826ea53885d49aa32045b7039426e1..727465ee80eade8e49c23a1627918d8eba3b09c1 100644
--- a/src/lookup.cc
+++ b/src/lookup.cc
@@ -308,6 +308,11 @@ void LookupIterator::PrepareTransitionToDataProperty(
PropertyAttributes attributes, Object::StoreFromKeyed store_mode) {
DCHECK(receiver.is_identical_to(GetStoreTarget()));
if (state_ == TRANSITION) return;
+
+ if (!IsElement() && name()->IsPrivate()) {
+ attributes = static_cast<PropertyAttributes>(attributes | DONT_ENUM);
+ }
+
DCHECK(state_ != LookupIterator::ACCESSOR ||
(GetAccessors()->IsAccessorInfo() &&
AccessorInfo::cast(*GetAccessors())->is_special_data_property()));
@@ -447,6 +452,9 @@ void LookupIterator::TransitionToAccessorProperty(
// handled via a trap. Adding properties to primitive values is not
// observable.
Handle<JSObject> receiver = GetStoreTarget();
+ if (!IsElement() && name()->IsPrivate()) {
+ attributes = static_cast<PropertyAttributes>(attributes | DONT_ENUM);
+ }
if (!IsElement() && !receiver->map()->is_dictionary_map()) {
Handle<Map> old_map(receiver->map(), isolate_);
« no previous file with comments | « no previous file | src/property.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698