diff options
author | Dave Borowitz <dborowitz@google.com> | 2013-10-29 11:16:53 -0700 |
---|---|---|
committer | David Pursehouse <david.pursehouse@sonymobile.com> | 2013-10-31 07:18:25 +0000 |
commit | 8f5aa59368b501dc518da615921c4fd859cd12f1 (patch) | |
tree | a78259907f0b27929b49053f1269327b7feaee7c | |
parent | c9b686056eeb344f21bdf259cc000ebd4fa8af65 (diff) |
ChangeField: skip PatchSets with null revisions
The revision field has notNull = false, so it may be null. Current
usages always call setRevision() on new PatchSets, but old changes in
the DB may be corrupt. Avoid an NPE when indexing these old changes.
Change-Id: I7467e94bd1b5d1b77e29dd26925463152160512d
(cherry picked from commit 849c5c8e00ed390af667a42fe387872e416c781a)
-rw-r--r-- | gerrit-server/src/main/java/com/google/gerrit/server/index/ChangeField.java | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/gerrit-server/src/main/java/com/google/gerrit/server/index/ChangeField.java b/gerrit-server/src/main/java/com/google/gerrit/server/index/ChangeField.java index a74ef01511..290bd3143c 100644 --- a/gerrit-server/src/main/java/com/google/gerrit/server/index/ChangeField.java +++ b/gerrit-server/src/main/java/com/google/gerrit/server/index/ChangeField.java @@ -206,7 +206,9 @@ public class ChangeField { throws OrmException { Set<String> revisions = Sets.newHashSet(); for (PatchSet ps : input.patches(args.db)) { - revisions.add(ps.getRevision().get()); + if (ps.getRevision() != null) { + revisions.add(ps.getRevision().get()); + } } return revisions; } |