Bug 1567341 - Send arguments using array instead of one string in adb.py. r=firefox-build-system-reviewers,mhentges,owlish

Sending arguments in one string breaks arguments that contain a space, e.g. in
xpcshell-test.

Differential Revision: https://phabricator.services.mozilla.com/D106208
This commit is contained in:
Agi Sferro 2021-03-24 21:49:37 +00:00
Родитель 92b119c179
Коммит 122215de9e
2 изменённых файлов: 10 добавлений и 1 удалений

Просмотреть файл

@ -291,6 +291,7 @@ public class GeckoThread extends Thread {
args.addAll(Arrays.asList(mInitInfo.args));
}
// Legacy "args" parameter
final String extraArgs = mInitInfo.extras.getString(EXTRA_ARGS, null);
if (extraArgs != null) {
final StringTokenizer st = new StringTokenizer(extraArgs);
@ -307,6 +308,12 @@ public class GeckoThread extends Thread {
}
}
// "argX" parameters
for (int i = 0; mInitInfo.extras.containsKey("arg" + i); i++) {
final String arg = mInitInfo.extras.getString("arg" + i);
args.add(arg);
}
return args.toArray(new String[args.size()]);
}

Просмотреть файл

@ -4207,7 +4207,9 @@ class ADBDevice(ADBCommand):
# Additional command line arguments that the app will read and use (e.g.
# with a custom profile)
if extra_args:
extras["args"] = " ".join(extra_args)
for (arg_count, arg) in enumerate(extra_args):
extras["arg" + str(arg_count)] = arg
extras["use_multiprocess"] = e10s
self.launch_application(
app_name,