Chromium Code Reviews| Index: src/factory.cc |
| diff --git a/src/factory.cc b/src/factory.cc |
| index 1a275e9609a4a4e159633212cdd37fd46fc7e54f..209a8de21699f7ad073ce51fcca40a31df3333a5 100644 |
| --- a/src/factory.cc |
| +++ b/src/factory.cc |
| @@ -753,7 +753,8 @@ Handle<Object> Factory::NewError(const char* maker, |
| Handle<JSArray> args) { |
| Handle<String> make_str = LookupUtf8Symbol(maker); |
| Handle<Object> fun_obj( |
| - isolate()->js_builtins_object()->GetPropertyNoExceptionThrown(*make_str)); |
| + isolate()->js_builtins_object()->GetPropertyNoExceptionThrown(*make_str), |
| + isolate()); |
| // If the builtins haven't been properly configured yet this error |
| // constructor may not have been defined. Bail out. |
| if (!fun_obj->IsJSFunction()) { |
| @@ -1275,7 +1276,7 @@ Handle<JSFunction> Factory::CreateApiFunction( |
| result->shared()->set_length(obj->length()); |
| // Set class name. |
| - Handle<Object> class_name = Handle<Object>(obj->class_name()); |
| + Handle<Object> class_name = Handle<Object>(obj->class_name(), isolate()); |
| if (class_name->IsString()) { |
| result->shared()->set_instance_class_name(*class_name); |
| result->shared()->set_name(*class_name); |
| @@ -1321,7 +1322,7 @@ Handle<JSFunction> Factory::CreateApiFunction( |
| while (true) { |
| Object* props = info->property_accessors(); |
| if (!props->IsUndefined()) { |
| - Handle<Object> props_handle(props); |
| + Handle<Object> props_handle(props, isolate()); |
| NeanderArray props_array(props_handle); |
| max_number_of_additional_properties += props_array.length(); |
| } |
| @@ -1333,11 +1334,12 @@ Handle<JSFunction> Factory::CreateApiFunction( |
| Map::EnsureDescriptorSlack(map, max_number_of_additional_properties); |
| while (true) { |
| - Handle<Object> props = Handle<Object>(obj->property_accessors()); |
| + Handle<Object> props = Handle<Object>(obj->property_accessors(), |
| + isolate()); |
| if (!props->IsUndefined()) { |
| Map::AppendCallbackDescriptors(map, props); |
| } |
| - Handle<Object> parent = Handle<Object>(obj->parent_template()); |
| + Handle<Object> parent = Handle<Object>(obj->parent_template(), isolate()); |
| if (parent->IsUndefined()) break; |
| obj = Handle<FunctionTemplateInfo>::cast(parent); |
| } |
| @@ -1457,9 +1459,9 @@ Handle<Object> Factory::GlobalConstantFor(Handle<String> name) { |
| Handle<Object> Factory::ToBoolean(bool value) { |
| - return Handle<Object>(value |
| - ? isolate()->heap()->true_value() |
| - : isolate()->heap()->false_value()); |
| + Heap* heap = isolate()->heap(); |
| + Object* obj = value ? heap->true_value() : heap->false_value(); |
| + return Handle<Object>(obj, isolate()); |
|
Michael Starzinger
2013/02/25 10:50:58
This can be simplified to "return value ? true_val
Sven Panne
2013/02/25 14:44:43
Done.
|
| } |