Index: src/objects.cc |
diff --git a/src/objects.cc b/src/objects.cc |
index 85a40f6be6f0a996fe9ba90cca0eda3ad96e6087..e5f0e494558ffa70212308523de5c595448b3121 100644 |
--- a/src/objects.cc |
+++ b/src/objects.cc |
@@ -2117,6 +2117,7 @@ MaybeObject* JSObject::SetPropertyViaPrototypes( |
break; |
} |
case CALLBACKS: { |
+ if (!FLAG_es5_readonly && result.IsReadOnly()) break; |
*done = true; |
return SetPropertyWithCallback(result.GetCallbackObject(), |
name, value, result.holder(), strict_mode); |
@@ -2550,6 +2551,7 @@ void JSObject::LookupRealNamedPropertyInPrototypes(String* name, |
return result->HandlerResult(JSProxy::cast(pt)); |
} |
JSObject::cast(pt)->LocalLookupRealNamedProperty(name, result); |
+ ASSERT(!(result->IsProperty() && result->type() == INTERCEPTOR)); |
if (result->IsProperty()) return; |
} |
result->NotFound(); |