| Index: src/apinatives.js
|
| diff --git a/src/apinatives.js b/src/apinatives.js
|
| index 193863f5c2f9f99cccb42432b0b6902b47898aff..8c567b8f85407c6ba3fab3f3127c181ba00c8ce0 100644
|
| --- a/src/apinatives.js
|
| +++ b/src/apinatives.js
|
| @@ -73,14 +73,10 @@ function InstantiateFunction(data, name) {
|
| if (name) %FunctionSetName(fun, name);
|
| cache[serialNumber] = fun;
|
| var prototype = %GetTemplateField(data, kApiPrototypeTemplateOffset);
|
| - var attributes = %GetTemplateField(data, kApiPrototypeAttributesOffset);
|
| - if (attributes != NONE) {
|
| - %IgnoreAttributesAndSetProperty(
|
| - fun, "prototype",
|
| - prototype ? Instantiate(prototype) : {},
|
| - attributes);
|
| - } else {
|
| - fun.prototype = prototype ? Instantiate(prototype) : {};
|
| + var flags = %GetTemplateField(data, kApiFlagOffset);
|
| + fun.prototype = prototype ? Instantiate(prototype) : {};
|
| + if (flags & (1 << kReadOnlyPrototypeBit)) {
|
| + %FunctionReadOnlyPrototype(fun);
|
| }
|
| %SetProperty(fun.prototype, "constructor", fun, DONT_ENUM);
|
| var parent = %GetTemplateField(data, kApiParentTemplateOffset);
|
|
|