From 412e495a21fe0d453109cec3eacba278c57b4cd7 Mon Sep 17 00:00:00 2001 From: Sebastian Sdorra Date: Mon, 4 Mar 2013 20:37:09 +0100 Subject: [PATCH] use ArrayList instead of ImmutableList for searchresult, because the result must be mutable for decorators --- .../src/main/java/sonia/scm/search/SearchHandler.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/scm-webapp/src/main/java/sonia/scm/search/SearchHandler.java b/scm-webapp/src/main/java/sonia/scm/search/SearchHandler.java index d5cb9ea8fa..e3a0f25c5c 100644 --- a/scm-webapp/src/main/java/sonia/scm/search/SearchHandler.java +++ b/scm-webapp/src/main/java/sonia/scm/search/SearchHandler.java @@ -37,7 +37,7 @@ package sonia.scm.search; import com.google.common.base.Function; import com.google.common.collect.Collections2; -import com.google.common.collect.ImmutableList; +import com.google.common.collect.Lists; import org.apache.shiro.SecurityUtils; import org.apache.shiro.subject.Subject; @@ -140,8 +140,11 @@ public class SearchHandler Collections2.transform(users, function); result.setSuccess(true); + // create a copy of the result collection to reduce memory - result.setResults(ImmutableList.copyOf(resultCollection)); + // use ArrayList instead of ImmutableList for copy, + // because the list must be mutable for decorators + result.setResults(Lists.newArrayList(resultCollection)); cache.put(queryString, result); } }