| Index: src/runtime.cc
|
| diff --git a/src/runtime.cc b/src/runtime.cc
|
| index f6bd294bfd1c7939f7c285dba8324ed8a1851daf..c7aa5e0c5c1e7c5d87d9f3f9d282f876876a6057 100644
|
| --- a/src/runtime.cc
|
| +++ b/src/runtime.cc
|
| @@ -8037,11 +8037,14 @@ static MaybeObject* Runtime_SetNewFunctionAttributes(Arguments args) {
|
| HandleScope scope;
|
| ASSERT(args.length() == 1);
|
| CONVERT_ARG_CHECKED(JSFunction, func, 0);
|
| - ASSERT(func->map()->instance_type() ==
|
| - Top::function_instance_map()->instance_type());
|
| - ASSERT(func->map()->instance_size() ==
|
| - Top::function_instance_map()->instance_size());
|
| - func->set_map(*Top::function_instance_map());
|
| +
|
| + Handle<Map> map = func->shared()->strict_mode()
|
| + ? Top::function_instance_map_strict()
|
| + : Top::function_instance_map();
|
| +
|
| + ASSERT(func->map()->instance_type() == map->instance_type());
|
| + ASSERT(func->map()->instance_size() == map->instance_size());
|
| + func->set_map(*map);
|
| return *func;
|
| }
|
|
|
|
|