summaryrefslogtreecommitdiff
path: root/java
diff options
context:
space:
mode:
author Jingwen Chen <jingwen@google.com> 2020-07-24 09:13:49 +0000
committer Jingwen Chen <jingwen@google.com> 2020-07-28 11:53:57 +0000
commit7b27ca7dadcf5b14524e400717db664bc2006817 (patch)
treed5f38d170ae76beae477b5b65239bf822564da75 /java
parent3992b7c486495a72daa49aea7757dbeadb1f716d (diff)
Fix droiddoc disting when WITHOUT_CHECK_API is true.
When WITHOUT_CHECK_API=true, the droidstubs apiFile can be nil. Fix this by defensively checking for nil paths when making the TaggedDistFiles, and also in android.MakeDefaultDistFiles. The error message reported in r.android.com/1335521 was: "internal error: panic in GenerateBuildActions for singleton androidmk Dist file should not be nil for the default tag in android.net.ipsec.ike.stubs.source in translateAndroidMkModule for module android.net.ipsec.ike.stubs.source variant android_common" Test: WITHOUT_CHECK_API=true m droid dist Bug: 152834186 Signed-off-by: Jingwen Chen <jingwen@google.com> Change-Id: I1b1f7c0b7a0e1c0ed5e15957d0162c47fd3ec197
Diffstat (limited to 'java')
-rw-r--r--java/androidmk.go12
1 files changed, 9 insertions, 3 deletions
diff --git a/java/androidmk.go b/java/androidmk.go
index 03994bfd6..3fb73c5fc 100644
--- a/java/androidmk.go
+++ b/java/androidmk.go
@@ -563,15 +563,21 @@ func (dstubs *Droidstubs) AndroidMkEntries() []android.AndroidMkEntries {
// are created in make if only the api txt file is being generated. This is
// needed because an invalid output file would prevent the make entries from
// being written.
+ //
+ // Note that dstubs.apiFile can be also be nil if WITHOUT_CHECKS_API is true.
// TODO(b/146727827): Revert when we do not need to generate stubs and API separately.
- distFile := dstubs.apiFile
+
+ var distFiles android.TaggedDistFiles
+ if dstubs.apiFile != nil {
+ distFiles = android.MakeDefaultDistFiles(dstubs.apiFile)
+ }
outputFile := android.OptionalPathForPath(dstubs.stubsSrcJar)
if !outputFile.Valid() {
- outputFile = android.OptionalPathForPath(distFile)
+ outputFile = android.OptionalPathForPath(dstubs.apiFile)
}
return []android.AndroidMkEntries{android.AndroidMkEntries{
Class: "JAVA_LIBRARIES",
- DistFiles: android.MakeDefaultDistFiles(distFile),
+ DistFiles: distFiles,
OutputFile: outputFile,
Include: "$(BUILD_SYSTEM)/soong_droiddoc_prebuilt.mk",
ExtraEntries: []android.AndroidMkExtraEntriesFunc{