@@ -218,14 +218,25 @@ class GitHelper {
218218}
219219
220220class GClientHelper {
221+ Future <String > execGclient (
222+ List <String > cmd, {
223+ String ? cwd,
224+ Map <String , String >? environment,
225+ }) {
226+ return exec (
227+ [Platform .isWindows ? 'gclient.bat' : 'gclient' , ...cmd],
228+ cwd: cwd,
229+ environment: environment,
230+ );
231+ }
232+
221233 Future <List <PackageDependency >> getPackageDependencies () async {
222234 // gclient revinfo --output-json=<file> --ignore-dep-type=cipd
223235
224236 final tempDir = Directory .systemTemp.createTempSync ();
225237 final outFile = File (path.join (tempDir.path, 'deps.json' ));
226238
227- await exec ([
228- 'gclient' ,
239+ await execGclient ([
229240 'revinfo' ,
230241 '--output-json=${outFile .path }' ,
231242 '--ignore-dep-type=cipd' ,
@@ -247,9 +258,8 @@ class GClientHelper {
247258 Future <String > getHash (PackageDependency dep) async {
248259 // DEPOT_TOOLS_UPDATE=0 gclient getdep --var=path_rev
249260 var depName = dep.name;
250- var result = await exec (
261+ var result = await execGclient (
251262 [
252- 'gclient' ,
253263 'getdep' ,
254264 '--var=${depName }_rev' ,
255265 ],
@@ -263,9 +273,8 @@ class GClientHelper {
263273 Future <String > setHash (PackageDependency dep, String hash) async {
264274 // gclient setdep --var=args_rev=9879dsf7g9d87d9f8g7
265275 var depName = dep.name;
266- return await exec (
276+ return await execGclient (
267277 [
268- 'gclient' ,
269278 'setdep' ,
270279 '--var=${depName }_rev=$hash ' ,
271280 ],
0 commit comments