From 4f1f3313a311437828ca3caecb5ba8994c2b8286 Mon Sep 17 00:00:00 2001 From: Jay Soffian Date: Wed, 13 Aug 2014 12:00:06 -0400 Subject: [PATCH] AddMembers.apply: Prevent NPE when account doesn't exist When trying to add an account to a group, if the account doesn't exist yet and cannot be created, AddMembers.apply() would throw an NPE. Fix it to throw UnprocessableEntityException instead, which is handled by RestApiServlet. Signed-off-by: Jay Soffian Change-Id: I724a7b8a95a8df70506ae591575c74153278adc4 --- .../main/java/com/google/gerrit/server/group/AddMembers.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gerrit-server/src/main/java/com/google/gerrit/server/group/AddMembers.java b/gerrit-server/src/main/java/com/google/gerrit/server/group/AddMembers.java index 8ec6a3fd1d..3da783997a 100644 --- a/gerrit-server/src/main/java/com/google/gerrit/server/group/AddMembers.java +++ b/gerrit-server/src/main/java/com/google/gerrit/server/group/AddMembers.java @@ -163,7 +163,10 @@ public class AddMembers implements RestModifyView { case LDAP: if (accountResolver.find(nameOrEmail) == null) { // account does not exist, try to create it - return createAccountByLdap(nameOrEmail); + Account a = createAccountByLdap(nameOrEmail); + if (a != null) { + return a; + } } break; default: