This is an automated email from the ASF dual-hosted git repository.
markt pushed a commit to branch 8.5.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git
The following commit(s) were added to refs/heads/8.5.x by this push:
new 16d345c Loop can be terminated after condition is met
16d345c is described below
commit 16d345c38e46d0e8392190791bd01a34392cc442
Author: Lars Grefer <[email protected]>
AuthorDate: Tue Apr 7 18:29:29 2020 +0200
Loop can be terminated after condition is met
---
java/org/apache/catalina/realm/RealmBase.java | 5 +++--
java/org/apache/catalina/startup/Tomcat.java | 2 ++
.../catalina/tribes/tipis/AbstractReplicatedMap.java | 14 ++++++++++----
test/org/apache/coyote/http11/TestHttp11Processor.java | 1 +
webapps/docs/changelog.xml | 4 ++++
5 files changed, 20 insertions(+), 6 deletions(-)
diff --git a/java/org/apache/catalina/realm/RealmBase.java
b/java/org/apache/catalina/realm/RealmBase.java
index ec5d010..aa42f3a 100644
--- a/java/org/apache/catalina/realm/RealmBase.java
+++ b/java/org/apache/catalina/realm/RealmBase.java
@@ -758,10 +758,11 @@ public abstract class RealmBase extends
LifecycleMBeanBase implements org.apache
}
boolean matched = false;
- for(int k=0; k < patterns.length && !matched; k++) {
+ for(int k = 0; k < patterns.length; k++) {
String pattern = patterns[k];
- if(pattern.equals("/")){
+ if (pattern.equals("/")) {
matched = true;
+ break;
}
}
if(matched) {
diff --git a/java/org/apache/catalina/startup/Tomcat.java
b/java/org/apache/catalina/startup/Tomcat.java
index a5244b6..fddc67a 100644
--- a/java/org/apache/catalina/startup/Tomcat.java
+++ b/java/org/apache/catalina/startup/Tomcat.java
@@ -528,6 +528,7 @@ public class Tomcat {
for (Connector serviceConnector : service.findConnectors()) {
if (connector == serviceConnector) {
found = true;
+ break;
}
}
if (!found) {
@@ -557,6 +558,7 @@ public class Tomcat {
for (Container engineHost : engine.findChildren()) {
if (engineHost == host) {
found = true;
+ break;
}
}
if (!found) {
diff --git a/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java
b/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java
index 2236c50..57a1418 100644
--- a/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java
+++ b/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java
@@ -823,8 +823,11 @@ public abstract class AbstractReplicatedMap<K,V>
public boolean inSet(Member m, Member[] set) {
if ( set == null ) return false;
boolean result = false;
- for (int i=0; i<set.length && (!result); i++ )
- if ( m.equals(set[i]) ) result = true;
+ for (int i = 0; i < set.length; i++ )
+ if (m.equals(set[i])) {
+ result = true;
+ break;
+ }
return result;
}
@@ -832,8 +835,11 @@ public abstract class AbstractReplicatedMap<K,V>
ArrayList<Member> result = new ArrayList<>();
for (int i=0; i<set.length; i++ ) {
boolean include = true;
- for (int j=0; j<mbrs.length && include; j++ )
- if ( mbrs[j].equals(set[i]) ) include = false;
+ for (int j = 0; j < mbrs.length; j++ )
+ if (mbrs[j].equals(set[i])) {
+ include = false;
+ break;
+ }
if ( include ) result.add(set[i]);
}
return result.toArray(new Member[0]);
diff --git a/test/org/apache/coyote/http11/TestHttp11Processor.java
b/test/org/apache/coyote/http11/TestHttp11Processor.java
index c873614..14107b3 100644
--- a/test/org/apache/coyote/http11/TestHttp11Processor.java
+++ b/test/org/apache/coyote/http11/TestHttp11Processor.java
@@ -622,6 +622,7 @@ public class TestHttp11Processor extends TomcatBaseTest {
for (Cookie cookie : req.getCookies()) {
if
(cookie.getName().equalsIgnoreCase("something.that.should.not.leak")) {
bug55772RequestStateLeaked = true;
+ break;
}
}
}
diff --git a/webapps/docs/changelog.xml b/webapps/docs/changelog.xml
index 3bf2894..c6c6744 100644
--- a/webapps/docs/changelog.xml
+++ b/webapps/docs/changelog.xml
@@ -129,6 +129,10 @@
Refactor to use empty arrays with <code>Collections.toArray()</code>.
Pull request provided by Lars Grefer. (markt)
</scode>
+ <scode>
+ Refactor loops with a condition to exit as soon as the condition is
met.
+ Pull request provided by Lars Grefer. (markt)
+ </scode>
</changelog>
</subsection>
</section>
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]