commit | 0ebf2c298053d12a5664ba8fec10eb35b9cd1eab | [log] [tgz] |
---|---|---|
author | Luca Milanesio <luca.milanesio@gmail.com> | Mon Mar 06 22:17:57 2017 +0000 |
committer | Luca Milanesio <luca.milanesio@gmail.com> | Mon Mar 06 22:17:57 2017 +0000 |
tree | 320691dbbb1cc8a57666ab9ace918e073c1e8c3c | |
parent | bc694782da4c1c682fccf71532fece9a7f6ff282 [diff] |
Fix OAuthProtocol equality predicate The way OAuthProtocol was checked for equality was not performing well and triggering stack-overflows because of the recursive equality check. Change-Id: I6140b544fbffcd156dca379ebfdf0b82f0334004
diff --git a/github-oauth/src/main/java/com/googlesource/gerrit/plugins/github/oauth/OAuthProtocol.java b/github-oauth/src/main/java/com/googlesource/gerrit/plugins/github/oauth/OAuthProtocol.java index 088b70e..f1ef494 100644 --- a/github-oauth/src/main/java/com/googlesource/gerrit/plugins/github/oauth/OAuthProtocol.java +++ b/github-oauth/src/main/java/com/googlesource/gerrit/plugins/github/oauth/OAuthProtocol.java
@@ -238,7 +238,16 @@ @Override public boolean equals(Object obj) { - return Objects.deepEquals(this, obj); + if (obj == null) { + return false; + } + if (getClass() != obj.getClass()) { + return false; + } + final AccessToken other = (AccessToken) obj; + return Objects.equals(this.accessToken, other.accessToken) + && Objects.equals(this.raw, other.raw) + && Objects.equals(this.tokenType, other.tokenType); } public boolean isError() {