From 613268cf57912c86245f186f1332777ef3f96cbf Mon Sep 17 00:00:00 2001 From: Marek Zawirski Date: Sat, 16 Aug 2008 15:21:01 +0200 Subject: [PATCH] Fix Repository.mapObject() for missing objects When object doesn't exist, instead of returning null as stated in javadoc this method was throwing NullPointerException. Now it returns null. Signed-off-by: Marek Zawirski --- org.spearce.jgit/src/org/spearce/jgit/lib/Repository.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/org.spearce.jgit/src/org/spearce/jgit/lib/Repository.java b/org.spearce.jgit/src/org/spearce/jgit/lib/Repository.java index 7679e532..a8591cc7 100644 --- a/org.spearce.jgit/src/org/spearce/jgit/lib/Repository.java +++ b/org.spearce.jgit/src/org/spearce/jgit/lib/Repository.java @@ -385,6 +385,8 @@ public class Repository { */ public Object mapObject(final ObjectId id, final String refName) throws IOException { final ObjectLoader or = openObject(id); + if (or == null) + return null; final byte[] raw = or.getBytes(); if (or.getType() == Constants.OBJ_TREE) return makeTree(id, raw); @@ -394,7 +396,8 @@ public class Repository { return makeTag(id, refName, raw); if (or.getType() == Constants.OBJ_BLOB) return raw; - return null; + throw new IncorrectObjectTypeException(id, + "COMMIT nor TREE nor BLOB nor TAG"); } /** -- 2.11.4.GIT