individually escape results of $(locations)

proptools.ShellEscape escapes mostly by surrounding the string in
quotes. This makes all the files from a $(locations) be passed as
one shell argument if escaping was needed. Escape them individually
so that they're still passed as separate arguments.

Bug: 307824623
Test: running art tests with aosp/2860435
Change-Id: I9940941f4a7bb4d29d9388e4d57f8cbd732b6d32
This commit is contained in:
Cole Faust
2023-12-07 14:58:45 -08:00
parent 25861686fe
commit ce74a59bb2

View File

@@ -539,7 +539,7 @@ func (g *Module) generateCommonBuildActions(ctx android.ModuleContext) {
if len(paths) == 0 {
return reportError("label %q has no files", label)
}
return proptools.ShellEscape(strings.Join(paths, " ")), nil
return strings.Join(proptools.ShellEscapeList(paths), " "), nil
} else {
return reportError("unknown locations label %q is not in srcs, out, tools or tool_files.", label)
}