| Index: runtime/lib/isolate.cc
|
| diff --git a/runtime/lib/isolate.cc b/runtime/lib/isolate.cc
|
| index f6d248a145b460d078e65ba91c3fe47df2506a80..fb51c07afed8253423d5304972b306231f6c08b0 100644
|
| --- a/runtime/lib/isolate.cc
|
| +++ b/runtime/lib/isolate.cc
|
| @@ -151,8 +151,8 @@ class SpawnIsolateTask : public ThreadPool::Task {
|
| return;
|
| }
|
|
|
| - Dart_IsolateFlags api_flags;
|
| - state_->isolate_flags()->CopyTo(&api_flags);
|
| + // Make a copy of the state's isolate flags and hand it to the callback.
|
| + Dart_IsolateFlags api_flags = *(state_->isolate_flags());
|
|
|
| Isolate* isolate = reinterpret_cast<Isolate*>(
|
| (callback)(state_->script_url(),
|
| @@ -391,7 +391,10 @@ DEFINE_NATIVE_ENTRY(Isolate_spawnUri, 12) {
|
| // If we were passed a value then override the default flags state for
|
| // checked mode.
|
| if (!checked.IsNull()) {
|
| - state->isolate_flags()->set_checked(checked.value());
|
| + bool val = checked.value();
|
| + Dart_IsolateFlags* flags = state->isolate_flags();
|
| + flags->enable_asserts = val;
|
| + flags->enable_type_checks = val;
|
| }
|
|
|
| ThreadPool::Task* spawn_task = new SpawnIsolateTask(state);
|
|
|