In cache key use ObjectId.zeroId() if refs/meta/config is missing
Use ObjectId.zeroId() instead of null as meta config revision in the
cache key if the project has no refs/meta/config branch. This
prevents potential NullPointerExceptions later.
Change-Id: I810f1d626a8d57e20f4dbe493d4dd9a20e42f6ab
Signed-off-by: Edwin Kempin <edwin.kempin@sap.com>
diff --git a/src/main/java/com/googlesource/gerrit/plugins/xdocs/XDocCache.java b/src/main/java/com/googlesource/gerrit/plugins/xdocs/XDocCache.java
index 8c03eb9..013a1c5 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/xdocs/XDocCache.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/xdocs/XDocCache.java
@@ -43,7 +43,10 @@
public Resource get(FormatterProvider formatter, Project.NameKey project,
String file, ObjectId revId) {
ProjectState p = projectCache.get(project);
- ObjectId metaConfigRevId = p != null ? p.getConfig().getRevision() : null;
+ ObjectId metaConfigRevId =
+ p != null && p.getConfig().getRevision() != null
+ ? p.getConfig().getRevision()
+ : ObjectId.zeroId();
return cache.getUnchecked((new XDocResourceKey(formatter.getName(),
project, file, revId, metaConfigRevId)).asString());
}