diff --git a/src/main/java/com/alibaba/druid/support/http/stat/WebAppStat.java b/src/main/java/com/alibaba/druid/support/http/stat/WebAppStat.java index b0956e85b5..775d8eb83e 100644 --- a/src/main/java/com/alibaba/druid/support/http/stat/WebAppStat.java +++ b/src/main/java/com/alibaba/druid/support/http/stat/WebAppStat.java @@ -31,6 +31,7 @@ import java.util.concurrent.locks.ReentrantReadWriteLock; import com.alibaba.druid.support.logging.Log; import com.alibaba.druid.support.logging.LogFactory; import com.alibaba.druid.util.LRUCache; +import java.util.Collections; public class WebAppStat { @@ -504,7 +505,7 @@ public class WebAppStat { public List> getSessionStatDataList() { List> sessionStatDataList = new ArrayList>(this.sessionStatMap.size()); - for (WebSessionStat sessionStat : this.sessionStatMap.values()) { + for (WebSessionStat sessionStat : Collections.unmodifiableCollection(this.sessionStatMap.values())) { Map sessionStatData = sessionStat.getStatData(); int runningCount = ((Number) sessionStatData.get("RunningCount")).intValue(); @@ -642,7 +643,6 @@ public class WebAppStat { } } else if (isLinux) { osLinuxCount.incrementAndGet(); - isAndroid = computeUserAgentAndroid(userAgent); } else if (userAgent.indexOf("Symbian") != -1) { osSymbianCount.incrementAndGet();