@@ -214,7 +214,6 @@ bool DartComponentControllerV2::CreateAndBindNamespace() {
214214
215215bool  DartComponentControllerV2::SetUpFromKernel () {
216216  dart_utils::MappedResource manifest;
217- 
218217  if  (!dart_utils::MappedResource::LoadFromNamespace (
219218          namespace_, data_path_ + " /app.dilplist" 
220219    return  false ;
@@ -225,10 +224,14 @@ bool DartComponentControllerV2::SetUpFromKernel() {
225224          isolate_snapshot_data_)) {
226225    return  false ;
227226  }
227+   if  (!dart_utils::MappedResource::LoadFromNamespace (
228+           nullptr , " /pkg/data/isolate_core_snapshot_instructions.bin" 
229+           isolate_snapshot_instructions_, true  /*  executable */ 
230+     return  false ;
231+   }
228232
229-   //  The core snapshot does not separate instructions from data.
230233  if  (!CreateIsolate (isolate_snapshot_data_.address (),
231-                      nullptr   /*  isolate_snapshot_instructions  */ 
234+                      isolate_snapshot_instructions_. address () )) {
232235    return  false ;
233236  }
234237
@@ -293,16 +296,16 @@ bool DartComponentControllerV2::SetUpFromAppSnapshot() {
293296      return  false ;
294297    }
295298  } else  {
296-     //  TODO(fxb/91200): This code path was broken for over a year and is
297-     //  probably not used.
298299    if  (!dart_utils::MappedResource::LoadFromNamespace (
299300            namespace_, data_path_ + " /isolate_snapshot_data.bin" 
300301            isolate_snapshot_data_)) {
301302      return  false ;
302303    }
303-     isolate_data = isolate_snapshot_data_.address ();
304-     //  We don't separate instructions from data in 'core' snapshots.
305-     isolate_instructions = nullptr ;
304+     if  (!dart_utils::MappedResource::LoadFromNamespace (
305+             namespace_, data_path_ + " /isolate_snapshot_instructions.bin" 
306+             isolate_snapshot_instructions_, true  /*  executable */ 
307+       return  false ;
308+     }
306309  }
307310  return  CreateIsolate (isolate_data, isolate_instructions);
308311#endif   //  defined(AOT_RUNTIME)
0 commit comments