@@ -158,24 +158,30 @@ class CompileDDCCommand extends CompileSubcommandCommand {
158
158
}
159
159
final args = argResults! ;
160
160
var snapshot = sdk.ddcAotSnapshot;
161
- var runtime = sdk.dartAotRuntime;
161
+ var script = sdk.dartAotRuntime;
162
+ var useExecProcess = true ;
162
163
if (! Sdk .checkArtifactExists (snapshot, logError: false )) {
163
164
// AOT snapshots cannot be generated on IA32, so we need this fallback
164
165
// branch until support for IA32 is dropped (https://dartbug.com/49969).
165
- snapshot = sdk.ddcSnapshot;
166
- runtime = sdk.dart;
167
- if (! Sdk .checkArtifactExists (snapshot)) {
166
+ script = sdk.ddcSnapshot;
167
+ if (! Sdk .checkArtifactExists (script)) {
168
168
return genericErrorExitCode;
169
169
}
170
+ useExecProcess = false ;
170
171
}
171
172
final ddcCommand = < String > [
172
- runtime,
173
- snapshot,
173
+ if (useExecProcess) snapshot,
174
174
// Add the remaining arguments.
175
175
if (args.rest.isNotEmpty) ...args.rest.sublist (0 ),
176
176
];
177
177
try {
178
- return await runProcessInheritStdio (ddcCommand);
178
+ VmInteropHandler .run (
179
+ script,
180
+ ddcCommand,
181
+ packageConfigOverride: null ,
182
+ useExecProcess: useExecProcess,
183
+ );
184
+ return 0 ;
179
185
} catch (e, st) {
180
186
log.stderr ('Error: JS compilation failed' );
181
187
log.stderr (e.toString ());
0 commit comments