Fix java.util.NoSuchElementException: No value present This fixes an issue where forUser.getUserName().get() could return something that was unexpected leading to gerrit returning 500 errors. Making it return null if it returns something unexpected fixes the issue. Bug: Issue 9820 Change-Id: If6c227d5134f81e7604b13800f90f785fa2ad206
diff --git a/src/main/java/com/googlesource/gerrit/plugins/avatars/external/ExternalUrlAvatarProvider.java b/src/main/java/com/googlesource/gerrit/plugins/avatars/external/ExternalUrlAvatarProvider.java index b3c9062..fdac920 100644 --- a/src/main/java/com/googlesource/gerrit/plugins/avatars/external/ExternalUrlAvatarProvider.java +++ b/src/main/java/com/googlesource/gerrit/plugins/avatars/external/ExternalUrlAvatarProvider.java
@@ -81,7 +81,7 @@ } StringBuilder avatarUrl = new StringBuilder(); String userReplacedAvatarURL = replaceInUrl(USER_PLACEHOLDER, - externalAvatarUrl, forUser.getUserName().get()); + externalAvatarUrl, forUser.getUserName().orElse(null)); avatarUrl.append(replaceInUrl(EMAIL_PLACEHOLDER, userReplacedAvatarURL, forUser.getAccount().getPreferredEmail())); if (imageSize > 0 && sizeParameter != null) {