From fdf85cf245cddf121d35799637aaea8795db2ebd Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Thu, 10 Apr 2014 18:58:09 -0400
Subject: [PATCH] Fix exception handling for account with no public keys

---
 src/main/java/com/gitblit/transport/ssh/gitblit/KeysDispatcher.java |    8 ++++++--
 1 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/src/main/java/com/gitblit/transport/ssh/gitblit/KeysDispatcher.java b/src/main/java/com/gitblit/transport/ssh/gitblit/KeysDispatcher.java
index 4430c68..a54196d 100644
--- a/src/main/java/com/gitblit/transport/ssh/gitblit/KeysDispatcher.java
+++ b/src/main/java/com/gitblit/transport/ssh/gitblit/KeysDispatcher.java
@@ -99,8 +99,12 @@
 		@Override
 		public void run() {
 			IPublicKeyManager keyManager = getContext().getGitblit().getPublicKeyManager();
-			List<PublicKey> keys = keyManager.getKeys(getContext().getClient().getUsername());
-
+			String username = getContext().getClient().getUsername();
+			List<PublicKey> keys = keyManager.getKeys(username);
+			if (keys == null) {
+				stdout.println(String.format("%s has not added any public keys for ssh authentication", username));
+				return;
+			}
 			for (PublicKey key : keys) {
 				// two-steps - perhaps this could be improved
 				Buffer buf = new Buffer();

--
Gitblit v1.9.1