From 5161ece63b99d39b2283f9b1bc77efd8bdd13aad Mon Sep 17 00:00:00 2001 From: Naoki Takezoe Date: Fri, 13 May 2016 15:43:44 -0400 Subject: [PATCH] (refs #1104)Unique checking for the public key --- .../scala/gitbucket/core/controller/AccountController.scala | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/scala/gitbucket/core/controller/AccountController.scala b/src/main/scala/gitbucket/core/controller/AccountController.scala index 5ddc010ce..caddeabb8 100644 --- a/src/main/scala/gitbucket/core/controller/AccountController.scala +++ b/src/main/scala/gitbucket/core/controller/AccountController.scala @@ -447,8 +447,8 @@ trait AccountControllerBase extends AccountManagementControllerBase { private def validPublicKey: Constraint = new Constraint(){ override def validate(name: String, value: String, messages: Messages): Option[String] = SshUtil.str2PublicKey(value) match { - case Some(_) => None - case None => Some("Key is invalid.") + case Some(_) if !getAllKeys().exists(_.publicKey == value) => None + case _ => Some("Key is invalid.") } }