Author: remy.maucherat(a)jboss.com
Date: 2008-11-04 01:34:01 -0500 (Tue, 04 Nov 2008)
New Revision: 847
Modified:
trunk/java/org/apache/tomcat/util/net/AprEndpoint.java
trunk/webapps/docs/changelog.xml
Log:
- Tweak the merging of flags for the wakeup attribute.
Modified: trunk/java/org/apache/tomcat/util/net/AprEndpoint.java
===================================================================
--- trunk/java/org/apache/tomcat/util/net/AprEndpoint.java 2008-11-03 23:49:56 UTC (rev
846)
+++ trunk/java/org/apache/tomcat/util/net/AprEndpoint.java 2008-11-04 06:34:01 UTC (rev
847)
@@ -1159,7 +1159,7 @@
* Socket list class, used to avoid using a possibly large amount of objects
* with very little actual use.
*/
- public class SocketInfo {
+ public static class SocketInfo {
public static final int READ = 1;
public static final int WRITE = 2;
public static final int RESUME = 4;
@@ -1179,6 +1179,12 @@
public boolean wakeup() {
return (flags & WAKEUP) == WAKEUP;
}
+ public static int merge(int flag1, int flag2) {
+ return ((flag1 & READ) | (flag2 & READ))
+ | ((flag1 & WRITE) | (flag2 & WRITE))
+ | ((flag1 & RESUME) | (flag2 & RESUME))
+ | ((flag1 & WAKEUP) & (flag2 & WAKEUP));
+ }
}
@@ -1290,7 +1296,7 @@
} else {
for (int i = 0; i < size; i++) {
if (sockets[i] == socket) {
- flags[i] = flags[i] | flag;
+ flags[i] = SocketInfo.merge(flags[i], flag);
return true;
}
}
Modified: trunk/webapps/docs/changelog.xml
===================================================================
--- trunk/webapps/docs/changelog.xml 2008-11-03 23:49:56 UTC (rev 846)
+++ trunk/webapps/docs/changelog.xml 2008-11-04 06:34:01 UTC (rev 847)
@@ -133,7 +133,8 @@
Refactor generation of the READ event which follows a BEGIN into the HTTP
protocol handler. (remm)
</fix>
<fix>
- <jira>124</jira>: Comet instability fixes. (remm)
+ <jira>124</jira>, <jira>125</jira>: APR instability fixes
involving asynchronous resume()
+ calls. (remm)
</fix>
<fix>
Fix timeout processing in many cases. (remm)
Show replies by date