This repository was archived by the owner on Feb 25, 2025. It is now read-only.
File tree Expand file tree Collapse file tree 3 files changed +24
-1
lines changed Expand file tree Collapse file tree 3 files changed +24
-1
lines changed Original file line number Diff line number Diff line change @@ -118,7 +118,7 @@ struct Settings {
118118
119119 // Used as the script URI in debug messages. Does not affect how the Dart code
120120 // is executed.
121- std::string advisory_script_uri = " main.dart" ;
121+ std::string advisory_script_uri = " file:/// main.dart" ;
122122 // Used as the script entrypoint in debug messages. Does not affect how the
123123 // Dart code is executed.
124124 std::string advisory_script_entrypoint = " main" ;
Original file line number Diff line number Diff line change @@ -929,6 +929,14 @@ Dart_Isolate DartIsolate::DartIsolateGroupCreateCallback(
929929 DartIsolateGroupData& parent_group_data =
930930 (*parent_isolate_data)->GetIsolateGroupData ();
931931
932+ if (parent_group_data.GetSettings ().advisory_script_uri !=
933+ advisory_script_uri) {
934+ std::string error_msg =
935+ std::string (" Unsupported isolate URI: " ) + advisory_script_uri;
936+ *error = fml::strdup (error_msg.c_str ());
937+ return nullptr ;
938+ }
939+
932940 auto isolate_group_data =
933941 std::make_unique<std::shared_ptr<DartIsolateGroupData>>(
934942 std::shared_ptr<DartIsolateGroupData>(new DartIsolateGroupData (
Original file line number Diff line number Diff line change 1+ // Copyright 2013 The Flutter Authors. All rights reserved.
2+ // Use of this source code is governed by a BSD-style license that can be
3+ // found in the LICENSE file.
4+
5+ import 'dart:async' ;
6+ import 'dart:isolate' ;
7+
8+ import 'package:test/test.dart' ;
9+
10+ void main () {
11+ test ('Invalid isolate URI' , () async {
12+ Future <Isolate > isolate = Isolate .spawnUri (Uri .parse ('http://127.0.0.1/foo.dart' ), [], null );
13+ expect (() async => await isolate, throwsA (const TypeMatcher <IsolateSpawnException >()));
14+ });
15+ }
You can’t perform that action at this time.
0 commit comments