Sanitize APEX module name properly.
An APEX module name, unlike the APEX package name, can contain characters like '-', which are not allowed as C define strings. Sanitize it properly. Test: build GKI APEX Change-Id: I8257d43c55862da8fab7f1e342c2d14369d1211e
This commit is contained in:
parent
4f35976c87
commit
f2ede7a137
1 changed files with 3 additions and 1 deletions
|
@ -573,10 +573,12 @@ func (compiler *baseCompiler) uniqueApexVariations() bool {
|
|||
return compiler.useApexNameMacro()
|
||||
}
|
||||
|
||||
var invalidDefineCharRegex = regexp.MustCompile("[^a-zA-Z0-9_]")
|
||||
|
||||
// makeDefineString transforms a name of an APEX module into a value to be used as value for C define
|
||||
// For example, com.android.foo => COM_ANDROID_FOO
|
||||
func makeDefineString(name string) string {
|
||||
return strings.ReplaceAll(strings.ToUpper(name), ".", "_")
|
||||
return invalidDefineCharRegex.ReplaceAllString(strings.ToUpper(name), "_")
|
||||
}
|
||||
|
||||
var gnuToCReplacer = strings.NewReplacer("gnu", "c")
|
||||
|
|
Loading…
Reference in a new issue