Chromium Code Reviews| Index: runtime/lib/isolate.cc |
| diff --git a/runtime/lib/isolate.cc b/runtime/lib/isolate.cc |
| index 1e08dad0b5edabec1fb148db98b624f54d9695a8..62bf7d5f63267bc9c3435cf96b0c28ee673063f9 100644 |
| --- a/runtime/lib/isolate.cc |
| +++ b/runtime/lib/isolate.cc |
| @@ -182,9 +182,13 @@ static bool CreateIsolate(Isolate* parent_isolate, |
| return false; |
| } |
| if (!state->is_spawn_uri()) { |
| - // For isolates spawned using the spawnFunction semantics we set |
| + child_isolate->set_strict_compilation(parent_isolate->strict_compilation()); |
|
Ivan Posva
2015/05/29 15:18:17
This should be handled when we create the spawn st
Lasse Reichstein Nielsen
2015/06/02 15:26:44
Done.
|
| + |
| + // For isolates spawned using the spawn semantics we set |
| // the origin_id to the origin_id of the parent isolate. |
| child_isolate->set_origin_id(parent_isolate->origin_id()); |
| + } else { |
| + child_isolate->set_strict_compilation(state->checked_mode()); |
| } |
| state->set_isolate(reinterpret_cast<Isolate*>(child_isolate)); |
| return true; |
| @@ -243,13 +247,14 @@ DEFINE_NATIVE_ENTRY(Isolate_spawnFunction, 4) { |
| } |
| -DEFINE_NATIVE_ENTRY(Isolate_spawnUri, 6) { |
| +DEFINE_NATIVE_ENTRY(Isolate_spawnUri, 7) { |
| GET_NON_NULL_NATIVE_ARGUMENT(SendPort, port, arguments->NativeArgAt(0)); |
| GET_NON_NULL_NATIVE_ARGUMENT(String, uri, arguments->NativeArgAt(1)); |
| GET_NON_NULL_NATIVE_ARGUMENT(Instance, args, arguments->NativeArgAt(2)); |
| GET_NON_NULL_NATIVE_ARGUMENT(Instance, message, arguments->NativeArgAt(3)); |
| GET_NON_NULL_NATIVE_ARGUMENT(Bool, paused, arguments->NativeArgAt(4)); |
| - GET_NATIVE_ARGUMENT(String, package_root, arguments->NativeArgAt(5)); |
| + GET_NON_NULL_NATIVE_ARGUMENT(Bool, checked, arguments->NativeArgAt(5)); |
| + GET_NATIVE_ARGUMENT(String, package_root, arguments->NativeArgAt(6)); |
| // Canonicalize the uri with respect to the current isolate. |
| char* error = NULL; |
| @@ -275,7 +280,8 @@ DEFINE_NATIVE_ENTRY(Isolate_spawnUri, 6) { |
| utf8_package_root, |
| args, |
| message, |
| - paused.value())); |
| + paused.value(), |
| + checked.value())); |
| return Object::null(); |
| } |